0

保護されたオブザーバブルには、関数に渡されるパラメーターが必要です。

var item = function(param)
{
  var me = this;
  me.itemProtected = ko.protectedObservable(param);

}

KO マッピング プラグインの内部の仕組みはわかりませんが、それを使用して Json データをモデルにマップすると、オブザーバブルは機能しません。プロパティをオブザーバブルとしてのみマッピングし、保護されたオブザーバブルを完全に無視していると思います。バインディング構文:

ko.mapping.fromJSON(data, null, viewModel);

json データをマップし、保護されたオブザーバブルを保持する方法はありますか?

あなたの助けは大歓迎です。

4

1 に答える 1

1
ViewModel = function(data)
{
   this.itemProtected = ko.protectedObservable();
   return ko.mapping.fromJS(data, {}, this);

}

これを機能させるには、JSON データ offcourse に itemProtected というメンバーが必要です。

編集: 免責事項、私は protectedObservable が何であるかを知りませんし、コア KO ライブラリの一部ではありません。

編集:

  • Solution1: http://jsfiddle.net/LFCWe/ json データを取得するためにコミットする必要があります
  • Solution2: http://jsfiddle.net/LFCWe/1/このフィドルは create メソッドを使用するため、JSON からの値は直接コミットされます。
于 2012-11-16T13:31:22.843 に答える