2016-06-14 5 views
1

私はsetの機能を参照して、set("myString", "hello");またはset("myMap.test", "world");の機能を参照していますが、逆の内容については興味がありましたか?私はunsetと考えましたが、Polymer 1.0 DartコードのPropertiesセクションをオンラインで見ると、私が望んでいた情報をかなり得られませんでした。セットの逆数は何ですか?

属性を削除するには、setの逆数はどのくらいですか?私の特定のユースケースは、私はそれがそのファイル内のどこかで休むだろうと思ったが、私は、任意の「未設定」または類似のを見ていない、set以来unset("myMap.testKey");

がPolymer_base.dartで定義されている、マップからキーを削除することです。

答えて

1

それが動作するかどうかはわからないが、私はマップから要素を削除してから値が、これはおそらく動作しませんすでにnullた場合

notifyPath('myMap.testKey, null); 

を呼び出します。

+0

問題は、メンテナンスマップ> 0のキーの数をチェックする計算されたプロパティがあることです。理想的には、キーがない場合は、その準備が整いました。キーが解決されると、キーはマップから削除されます。私が未定義としてそれを定義したとしても、キーはこの場合でもまだマップにありますか? – Fallenreaper

+0

有効な方法と思われます。私の更新された答えを見てください。それ以外の場合は、プロパティを取り除いてPolymerに通知するには 'delete'と' set( "myMap.test"、undefined) 'を使用してください。それが問題を引き起こすなら 'set(...)'( 'delete'の後)ではなく' notifyPath(path、value) 'を試すことができます。 –

+0

未定義はJavaScriptのものですが、私はこれをDartで書いていますので、おそらくnullになるでしょうか?欠点は、それを未定義に設定していても、地図上にあるようにそれをループすると言います...つまり、私の 'isEnabled => myMap.length == 0;'のアプローチは、希望のアプローチ – Fallenreaper

関連する問題