0

我正在修改一些淘汰代码,我遇到了这个:

this.edit = ko.observable();
this.selected = ko.observable();
this.clicked = ko.observable();

为同一个 ko.observable 分配多个引用对我来说没有意义。这样做有什么原因吗?

我认为它应该是这样的:

this.genericName = ko.observable();

然后在使用 this.edit、this.selected 或 this.clicked 的任何地方使用 this.genericName。

4

1 回答 1

0

Ako.observable();返回一个新的可观察属性,这与具有一组可观察属性的对象(如 Backbone 中的模型对象)不同。要拥有一个具有多个可观察属性的对象,您需要使用ko.observable()工厂方法创建多个可观察对象。

你可以看到它们是独立的:

var a = ko.observable();
var b = ko.observable();
a(1);
b(2);
console.log(a()); // prints 1
于 2013-01-28T12:45:45.993 回答