如何在线获取用户在 dartpad 上的输入?
How to get user input on dartpad online?
如何在 dartpad 的控制台中获取用户输入?
每当我写
import 'dart:io';
void main() {
stdout.write("What's your name? ");
var name = stdin.readLineSync();
print("Hi, $name!");
}
但是我在控制台 window 中遇到了这样的异常
Uncaught exception:
Unsupported operation: StdIOUtils._getStdioOutputStream
如 DartPad 手册所述:https://dart.dev/tools/dartpad
DartPad supports dart:* libraries that work with web apps; it doesn’t support dart:io or libraries from packages. If you want to use dart:io, use the Dart SDK instead. If you want to use a package, get the SDK for a platform that the package supports.
因此您不能使用 stdin/stdout,因为它来自 dart:io 库。
要解决您的问题,您可以在 DartPad 页面底部启用 "Show web content"。在这里,您可以将 HTML 代码添加到您的项目中,并使用例如一个按钮。在您的 Dart 代码中添加一些逻辑,监听按钮并读取文本字段的值。
遗憾的是,您不能使用 dart:io 等包中的库,因为 DartPad 只支持与网络应用程序一起使用的库。
要使用这些库:
- 您可以下载SDK
或
- 检查以下 link 到 运行 您在 VScode 上的代码:
如何在 dartpad 的控制台中获取用户输入?
每当我写
import 'dart:io';
void main() {
stdout.write("What's your name? ");
var name = stdin.readLineSync();
print("Hi, $name!");
}
但是我在控制台 window 中遇到了这样的异常
Uncaught exception:
Unsupported operation: StdIOUtils._getStdioOutputStream
如 DartPad 手册所述:https://dart.dev/tools/dartpad
DartPad supports dart:* libraries that work with web apps; it doesn’t support dart:io or libraries from packages. If you want to use dart:io, use the Dart SDK instead. If you want to use a package, get the SDK for a platform that the package supports.
因此您不能使用 stdin/stdout,因为它来自 dart:io 库。
要解决您的问题,您可以在 DartPad 页面底部启用 "Show web content"。在这里,您可以将 HTML 代码添加到您的项目中,并使用例如一个按钮。在您的 Dart 代码中添加一些逻辑,监听按钮并读取文本字段的值。
遗憾的是,您不能使用 dart:io 等包中的库,因为 DartPad 只支持与网络应用程序一起使用的库。
要使用这些库:
- 您可以下载SDK
或
- 检查以下 link 到 运行 您在 VScode 上的代码: