【问题标题】:Add delete item button - ToDo App - Dart添加删除项目按钮 - ToDo App - Dart
【发布时间】:2015-05-22 07:14:55
【问题描述】:

我对飞镖很陌生,所以不要评判我。 :))

我刚开始用 Dart 编写一个简单的 ToDo 应用程序。我想为项目添加一个按钮,以便我可以从列表中删除它。我成功添加了按钮,但点击事件没有工作。

我知道为什么代码不起作用,但不知道解决这个问题的最佳解决方案是什么。

一些改进会很棒。

提前致谢 罗恩

my little sexy dartpad

【问题讨论】:

    标签: dart


    【解决方案1】:

    您需要注册onClick 监听以删除每个按钮上的当前项目。这是您的代码的工作版本。

    import 'dart:html';
    
    InputElement toDoInput;
    UListElement toDoList;
    
    void main() {
      toDoInput = querySelector('#to-do-input');
      toDoList = querySelector('#to-do-list');
    
      toDoInput.onChange.listen(addToDoItem);
    }
    
    // Add item to list
    void addToDoItem(Event e) {
      final toDoItem = new LIElement();
      toDoItem.text = toDoInput.value;
    
      final deleteItemButton = new ButtonElement()
        ..text = 'Delete'
        ..onClick.listen((_) => toDoItem.remove());
    
      toDoItem.children.add(deleteItemButton);
      toDoList.children.add(toDoItem);
    
      toDoInput.value = '';
    }
    

    【讨论】:

    • 谢谢!这对我来说很有意义! :) 你能告诉我listen((_) =>中下划线的含义吗?
    • 是函数的参数名。通常当你真的不需要使用参数并且想要提高代码的可读性时,你会使用_
    • 啊,所以没什么特别的意思。也这么觉得。 :) 感谢您的帮助,亚历克斯 :)
    猜你喜欢
    • 1970-01-01
    • 2021-02-13
    • 2018-12-02
    • 1970-01-01
    • 2018-01-27
    • 1970-01-01
    • 1970-01-01
    • 2020-01-06
    • 2023-01-20
    相关资源
    最近更新 更多