MVVM框架jsViews和Knockout的选择
MVVM框架jsViews和Knockout的选择
作者:chszs,转载需注明。
作者博客主页:http://blog.csdn.net/chszsjsViews和Knockout都是JavaScript库,都在客户端实现了MVVM模式,使用了jQuery模板插件jsRender。
如何选择jsViews和Knockout库呢?看下面的对比:
一、Knockout的优缺点:
1. 优点:
- 事件声明式的绑定,比选择器或代码绑定更方便。
- 有极好的文档和例子。
- 绑定常见的元素非常容易,语法简单。
2. 缺点:
- 需要使用绑定引擎的ko.observable(data)调用来转换视图数据为可用的数据。
- 在访问时,需要以函数方式调用视图模型属性。如果忘记这一点,绑定会被破坏,且不报错。
- 声明式的事件绑定违背了关注点隔离的原则。
作者博客主页:http://blog.csdn.net/chszs二、下面看jsViews的优缺点
1. 优点:
- 使用原始的视图模型,无需转换或封装。
- 轻量级、速度快。
- 使用jsRender开箱即用,无需修改。
2. 缺点:
- 对于数据变更,需要在代码中明确指定"observalbe"更新调用。
- 文档极少,仅有几个例子。
- 无事件绑定的功能。
三、结论
两个框架差不多,可以根据自己的喜好任意选择。