最近忙着一个项目的上线,突然想起好久没上博客园了
跑进来看了一下,好像已经过了有四个月了
想想也是过了蛮久了,所以进来发表一点什么东西
偶然机会看了一个叫KnockOutJs的东西,体验了一下,觉得还是蛮好玩的
首先引用官方的knockoutjs,然后写上js代码
var ViewModel = function(first, middle,last) {
this.firstName = ko.observable(first);
this.middleName=ko.observable(middle);
this.lastName = ko.observable(last);
this.fullName = ko.pureComputed(function() {
return this.firstName() + " " + this.middleName() +" " + this.lastName();
}, this);
};
ko.applyBindings(new ViewModel("Planet", "caigen","Earth")); // 这个就是应用KnowckOutJs
相当于定义一个ViewModel 其实就是一个对象,调用ko.observable进行相关属性的初始化
然后写上html代码进行数据绑定
<div class='liveExample'>
<p>First name: <input data-bind='value:firstName' /></p>
<p>Middle name:<input data-bind='value:middleName' /></p>
<p>Last name: <input data-bind='value: lastName' /></p>
<p>Full name:<span data-bind='text:fullName'></span></p>
</div>
这个框架有什么效果呢
比较神奇就是当对话框内容改变时,绑定的数据也会跟着变化,有意思