2015-05-22 52 views
0

我對飛鏢很陌生,所以不要評價我。 :))添加刪除項目按鈕 - 待辦事項 - 飛鏢

我剛開始在Dart寫一個簡單的ToDo應用程序。我想添加一個按鈕到項目,所以我可以從列表中刪除它。我成功地添加了按鈕,但沒有得到click事件的工作。

我知道爲什麼代碼不能正常工作,但不知道最好的解決方案是解決這個問題。

一些改進將會很棒。

在此先感謝 羅恩

my little sexy dartpad

回答

2

您需要註冊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 = ''; 
} 
+0

謝謝!這對我有意義! :)你可以告訴我'listen((_)=>'中下劃線的含義嗎? – Ron

+1

這是函數參數的名字,通常當你不需要使用參數時使用'_'你想提高你的代碼的可讀性 –

+0

啊,所以沒什麼特別的意思,這樣想:)感謝你的幫助Alex :) – Ron