我只是在寻找一个快速的答案,因为我现在无法解决它。
我想通过一个操作依赖的可观察对象的函数根据不同的其他可观察对象的值来更新可观察对象。
假设我有一个包含 2 个字段的对象。其中 1 个也是一个对象,第 2 个是我想要更新的 observable。
function Control(elem) {
var self = this;
self.element = element;
self.calc = ko.observable();
}
然后我有一个函数可以考虑元素并得出一个值。
function Control(elem) {
var self = this;
self.element = element;
self.calc = ko.observable('10');
self.doSomething = function () {
var dummy = 0;
if (self.element.number() === 1)
dummy = self.element.value + 10;
else
dummy = self.element.value + '+ 10';
return dummy;
}
}
每次元素的数字或值属性之一发生更改时,如何使用函数返回的结果更新计算?
我提到我不想通过用dummy替换它来直接更新calc,因为它会使 observable 触发太多次。
JsFiddle:http: //jsfiddle.net/razvangl/cf3kB/