本文主要是介绍knockoutJs学习笔记(一),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
1. 激活Knockout绑定
例如:
var
myViewModel = {
personName:
'Bob'
,
personAge: 123
};
Ko.applyBindings(myViewModel)
其中Ko.applyBinding方法第一参数表示想要使用它激活声明绑定视图的模型对象,可以通过提供第二个参数声明要将该模型绑定到文档的某一部分。写法如:Ko.applyBindings(myViewModel,document.getElemnetById('someElementId'));
2. 通过subscribe显示声明一个订阅事件
例如:
var
myViewModel = {
personName:
ko.observable('jac')
,
personAge: 123
};
var
subscription = myViewModel.personName.subscribe(
function
(newValue) {
/* do stuff */
});
// ...then later...
subscription.dispose();
// I no longer want notifications
订阅函数接收三个参数:一个参数:回调方法,回调是每当通知发生时调用的函数,第二个参数:目标(可选),在回调函数中定义这个值,第三个参数:事件名(可选),默认是“change”,可以更改接收通知的事件名称。
3. 强迫当监控属性值发生更改时,总是通知用户
myViewModel.personName.extend({ notify: 'always' }); |
4. 延迟或者抑制更改通知
通常,当监控属性的值发生更改时,就会立即通知用户。如果这个监控属性的值是反复更改或触发,那么对服务器来说性能是昂贵的。可以通过限制或延迟观察到的变化通知,使得拥有更好的性能。
// Ensure it notifies about changes no more than once per 50-millisecond period myViewModel.personName.extend({ rateLimit: 50 }); |
这篇关于knockoutJs学习笔记(一)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!