我正在尝试使用 knockout.js 的计算 observables 在模型上设置类似 C# 的属性。我希望 observable 只接受有效值。简化示例:
function Model()
{
var a = 100;
var b = 200;
var $ = this;
this.a = ko.computed({
read: function(){return a},
write: function(value){
var newval = parseFloat(value, 10);
if(newval < 1000)
a = newval;
}});
this.b = ko.observable(b);
}
写入a
悬停不会更新绑定。a
是否可以像普通成员一样启用更改,Model
但附加了额外的功能?
我知道我可以使用第二个 observable 来包含实际值并依赖它的更新机制,但是随着此类计算属性数量的增加,这种方法很快变得很麻烦。