日期:2014-05-16  浏览次数:20374 次

MVVM框架jsViews和Knockout的选择

MVVM框架jsViews和Knockout的选择


作者:chszs,转载需注明。
作者博客主页:http://blog.csdn.net/chszs


jsViews和Knockout都是JavaScript库,都在客户端实现了MVVM模式,使用了jQuery模板插件jsRender。

如何选择jsViews和Knockout库呢?看下面的对比:

一、Knockout的优缺点:

1. 优点:

  • 事件声明式的绑定,比选择器或代码绑定更方便。
  • 有极好的文档和例子。
  • 绑定常见的元素非常容易,语法简单。

2. 缺点:

  • 需要使用绑定引擎的ko.observable(data)调用来转换视图数据为可用的数据。
  • 在访问时,需要以函数方式调用视图模型属性。如果忘记这一点,绑定会被破坏,且不报错。
  • 声明式的事件绑定违背了关注点隔离的原则。

作者博客主页:http://blog.csdn.net/chszs

二、下面看jsViews的优缺点

1. 优点:

  • 使用原始的视图模型,无需转换或封装。
  • 轻量级、速度快。
  • 使用jsRender开箱即用,无需修改。

2. 缺点:

  • 对于数据变更,需要在代码中明确指定"observalbe"更新调用。
  • 文档极少,仅有几个例子。
  • 无事件绑定的功能。

三、结论

两个框架差不多,可以根据自己的喜好任意选择。