dart - 如何在 Dart 中写入时处理用户输入

标签 dart dart-html

我正在尝试使用 Dart 和 HTML 构建一个 Web 应用程序。我有一个 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 - 如何在 Dart 中写入时处理用户输入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56079516/

相关文章:

Flutter:如何为 ToggleButtons 的每个按钮着色

dart - Flutter Bottomsheet Modal 不重新渲染

templates - Dart 中的 Mustache 模板用法

dom - 如何管理DOM元素依赖性

flutter - 从另一个 dart 文件调用函数

dart - TableElement.append(Element)乱序添加行

dart - 将Dart用作DSL

sql - 在 flutter 中关闭sqf

dart - 从扩展类访问抽象类属性

jquery - 在 Dart 2 中为 HTML 元素创建类似 jQuery 的动画