Events 我该怎么做才能防止一个元素的变化触发另一个元素的变化?

Events 我该怎么做才能防止一个元素的变化触发另一个元素的变化?,events,element,dart,Events,Element,Dart,在lib/tool_bar.dart的工具栏类中 目前有两个因素 InputElement itemNameInput 选择Element itemCategorySelect itemNameInput.onChange.listen((事件e){ itemCategorySelect.onChange.listen((事件e){ itemCategorySelect中的更改会触发itemNameInput!中的更改?此更改使工具的使用复杂化 我该怎么做才能防止一个元素的变化触发另一个元素的

在lib/tool_bar.dart的工具栏类中

目前有两个因素

InputElement itemNameInput

选择Element itemCategorySelect

itemNameInput.onChange.listen((事件e){

itemCategorySelect.onChange.listen((事件e){

itemCategorySelect中的更改会触发itemNameInput!中的更改?此更改使工具的使用复杂化

我该怎么做才能防止一个元素的变化触发另一个元素的变化

在该工具中,为选定概念输入新属性时会发生此情况:

通过在属性字段中输入新属性的名称,可以将其添加到所选概念中。使用Enter键可以在概念的属性中查看名称。 如果您想使用不同于建议的特征, 首先更改它们,然后在属性字段中输入名称(我希望避免这种情况)

问题: 如果先输入属性名称而不使用enter键,则更改 至少有一个特征(如属性类别)显示名称 在概念的属性中,但不改变特征。
然后,您必须选择它(通过再次输入其名称)以应用更改。

我找到了一个可行的解决方案:

改变

itemNameInput.onChange.listen((事件e){

itemNameInput.onKeyPress.listen((键盘事件e){

这样,只有在按下Enter键后,属性名称才会显示在概念的属性中

然而,在Dart API文档中,我发现KeyboardEvent已被弃用

注意:在DOM级别3中,KeyboardEvent接口被弃用,取而代之的是新的TextInput接口和相应的TextInput事件,它们改进了对备用输入方法的支持

我没有找到TextInput接口或TextInput事件

  if (e.keyCode != 13) return; // 13 is Enter key