1
我試圖跳過文件上線,我看到set
功能,當我做set("myString", "hello");
或set("myMap.test", "world");
但我很好奇,什麼是相反的?我想到unset
,但是當在線查看聚合物1.0 Dart代碼的屬性部分時,我並沒有收到我想要的信息。集合的逆是什麼?
什麼是set的反轉,去除一個屬性?我的特定用例是從地圖上刪除一個關鍵,unset("myMap.testKey");
由於set
在Polymer_base.dart定義,我認爲這將是文件中的某個地方休息,但我沒有看到任何「未設置」或類似。
問題是,我有一個計算屬性,它檢查維護映射> 0中的鍵的數量,所以如果沒有鍵,理想情況下它就準備好了。隨着密鑰解決,它將從地圖中移除。即使我將其定義爲未定義,鍵仍然會在地圖中,不是嗎? – Fallenreaper
似乎是一種有效的方法。看到我更新的答案。否則,只需使用'delete'和'set(「myMap.test,undefined)'來擺脫屬性並通知聚合物它。如果這導致問題,您可以嘗試'notifyPath(path,value)'而不是'set(...)'(在'delete'之後)。 –
undefined是一個JavaScript的東西,我在Dart寫這個,所以也許它只是空?缺點是即使設置爲undefined,它仍然會像在地圖中一樣循環...因此,也就是說我的方法'isEnabled => myMap.length == 0;'不是我期望的方法 – Fallenreaper