プロパティへの変更についてViewModelを監視したいと思います。これはノックアウト.jsで可能ですか?
質問する
513 次
2 に答える
2
Ryan Niemeyer は、Knockout ビュー モデルに一般的なダーティ フラグを実装するための優れたウォークスルーを提供しています。
http://www.knockmeout.net/2011/05/creating-smart-dirty-flag-in-knockoutjs.html
到達した基本的なアプローチは、ko.toJSON を使用してビュー モデル全体の JSON 表現を比較し、プロパティ値が変更されたかどうかを判断することです。これは、ビュー モデルが大きくなり、ネストすると、これはコストのかかる操作になる可能性があります。
于 2012-11-16T21:19:56.380 に答える
1
このコードはどうですか:
function subscribeToModelChange (viewModel)
{
for (var prop in viewModel)
{
if (ko.isObservable (viewModel[prop])
viewModel[prop].subscribe (function (newValue) { onModelChanged (viewModel[prop], newValue); });
}
}
function onModelChanged (observable, newValue)
{
alert ("Hooray!");
}
ビューモデルで観測可能なノックアウトへの変更について通知されます。
于 2012-11-16T20:46:08.590 に答える