如何在 Dart 中写入时处理用户输入
How to process user input as it writes in Dart
我正在尝试使用 Dart 和 HTML 构建网络应用程序。我有一个 HTML 输入字段
接收类型文本。我想处理用户输入的文本,因为它输入每个字母,而不仅仅是当它点击 ENTER 或类似的东西时。
我目前在 Dart 中提出了这个解决方案,但它只在按下 ENTER 时打印用户输入,这不是我所说的。
import 'dart:html';
void main() {
TextInputElement text = querySelector("#input-text");
text.autocomplete = "asas";
text.onChange.listen((data) {
parent.appendHtml('<p>${text.value}</p>');
});
}
我查找了一些主题,例如 Futures、Streams 和 Broadcast streams,但它看起来不像我仍然需要的。
如果有人能提供帮助那就太好了!
Onchange 只会以这种方式工作,因为它会监听提交事件。
您可以做的是监听输入字段 .onKeyUp 事件。
如果您在输入字段中键入并松开按键,则每次都会注册此事件并调用侦听器
https://dartpad.dartlang.org/02e27326c073de360f14bb9a9726f1c9
您可以在输入内容时在 dart 上看到此示例。
此处也可以使用 onKeyPress 上的 onKeyDown,但问题是如果用户按住该键,它将注册所有这些事件,创建 n 个事件
我正在尝试使用 Dart 和 HTML 构建网络应用程序。我有一个 HTML 输入字段 接收类型文本。我想处理用户输入的文本,因为它输入每个字母,而不仅仅是当它点击 ENTER 或类似的东西时。
我目前在 Dart 中提出了这个解决方案,但它只在按下 ENTER 时打印用户输入,这不是我所说的。
import 'dart:html';
void main() {
TextInputElement text = querySelector("#input-text");
text.autocomplete = "asas";
text.onChange.listen((data) {
parent.appendHtml('<p>${text.value}</p>');
});
}
我查找了一些主题,例如 Futures、Streams 和 Broadcast streams,但它看起来不像我仍然需要的。 如果有人能提供帮助那就太好了!
Onchange 只会以这种方式工作,因为它会监听提交事件。 您可以做的是监听输入字段 .onKeyUp 事件。
如果您在输入字段中键入并松开按键,则每次都会注册此事件并调用侦听器
https://dartpad.dartlang.org/02e27326c073de360f14bb9a9726f1c9
您可以在输入内容时在 dart 上看到此示例。
此处也可以使用 onKeyPress 上的 onKeyDown,但问题是如果用户按住该键,它将注册所有这些事件,创建 n 个事件