我有三个观察点
viewModel.a = ko.observable(0);
viewModel.b = ko.observable(0);
viewModel.c = ko.observable(0);
我需要它们全部以可计算的方式观察
viewModel.co = ko.computed(function(){
var a = this.a();
return this.b() + this.c();
}, viewModel);
仅在更新
co
或b
时如何使c
更新?http://jsfiddle.net/DgVCF/
最佳答案
您可以使用peek()
函数获取a
的值,而无需在计算所得的值上创建依赖关系:
viewModel.co = ko.computed(function(){
var a = this.a.peek();
console.log(1);
return this.b() + this.c();
}, viewModel);
另请参见documentation。
演示JSFiddle。
关于javascript - 如何使“独立”计算的可观察到可观察的(Knockout.js),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/20023338/