什么是ko.observable的用途

时间:2014-03-28 19:59:13

标签: knockout.js

嗨,我很擅长淘汰js
请有人告诉我

之间的区别
{ id: 1, Name: "Nokia", Price: 3000 }
{ id: ko.observable(1), Name: ko.observable("Nokia"), Price: ko.observable(3000) 

由于

2 个答案:

答案 0 :(得分:7)

KO是它在视图模型更改时自动更新UI。 KO如何知道视图模型的某些部分何时发生变化?答:您需要将模型属性声明为可观察对象,因为这些是特殊的JavaScript对象,可以通知订阅者有关更改的信息,并且可以自动检测依赖关系。

非常简单。请参阅knockout.js的帮助文档

http://knockoutjs.com/documentation/observables.html

希望有所帮助

答案 1 :(得分:4)

文档及其教程确实很棒。

简要说明:ko.observable会返回一个getter / setter 函数。您的第一个对象只是普通的

在第一种情况下,您可以obj.Price = obj.Price + 1000

在第二步中你应该obj.Price(obj.Price() + 1000)

功能方法的好处是它可以实现自动变更跟踪。

如果这还不够清楚,请查看KO的文档,这非常好。