Knockout.js 互动版

在线工具推荐: Three.js AI纹理开发包 - YOLO合成数据生成器 - GLTF/GLB在线编辑 - 3D模型格式在线转换 - 可编程3D场景编辑器

Observables

KO一个重要的功能是当你的view model改变的时候能自动更新你的界面。当你的view model部分改变的时候KO是如何知道的呢?答案是:你需要将你的model属性声明成observable的, 因为它是非常特殊的JavaScript对象,能够通知订阅者它的改变以及自动探测到相关的依赖。

 var myViewModel = {
    personName: ko.observable('Bob'),
    personAge: ko.observable(123)
};

你根本不需要修改view– 所有的data-bind语法依然工作,不同的是他能监控到变化,当值改变时,view会自动更新。

读取监控属性的值,只需要直接调用监控属性(不需要参数),例如:

myViewModel.personName(); //将返回'Bob', 
myViewModel.personAge();  //将返回 123。

写一个新值到监控属性上,调用这个observable属性并当新值作为参数。例如:

myViewModel.personName('Mary');  //将更新name值为'Mary'。