0

基本的に、JSViews でオブザーバー オブジェクトのキーの名前を変更できますか?

これは、スタックの質問と更新されたJSFiddle の例に関連しています。この例では、ファイル名がオブジェクト プロパティであり、キーでもあるファイルの名前を変更します。

私の実際の例では、実際にonBeforeChangeヘルパーを使用して、引数oldValue&が提供される名前変更を実行していますvalue。次に、oldValueを使用してオブザーバー オブジェクトをナビゲートし、名前を変更します。ただし、オブジェクト キーの名前を変更していないため、oldValueが同期されていないため、それ以上の名前変更は失敗します。

説明と上記のフィドルが理にかなっていることを願っています... :s

ご検討ありがとうございます!

4

1 に答える 1

0

次のように呼び出すことで、それに近いものを実現できます。

$.observable(object).setProperty("newKey", object.key);
$.observable(object).setProperty("key", undefined);

これにより、プロパティ object.key の値が未定義のままになりますが、実際にはプロパティが削除されません。

必要に応じて、電話することができます

delete object.key;

$(object).removeProperty("someKey")おそらく今後の更新で新しいものがあるでしょう-これにより、次のように書くことができます:

$.observable(object).setProperty("newKey", object.key);
$.observable(object).removeProperty("key");


アップデート

removePropertyを使用できるようになりました。

$.observable(object).removeProperty("key");
于 2014-05-29T22:33:38.987 に答える