Versus 将使用 Cookie 来提升您的网站体验。继续浏览网站即表示您同意我们使用 Cookie。 隐私政策

100

AngularJS

64

CanJS

对比胜出方
AngularJS
CanJS
vs
vs

%{comparison}:对比中的 34 个事实

AngularJS vs CanJS

AngularJS
CanJS

为什么AngularJS优于CanJS?

  • 具有双向数据绑定
    ?
  • 模型是单纯的JavaScript对象
    ?
  • 具有自动视图筛选
    ?
  • 扩展HTML
    ?
  • 具有依赖注入(Dependency Injection)
    ?
  • 拥有一个支持动画的流行插件
    ?
  • 1低的依赖性
    ?
  • 异步更新DOM
    ?

为什么CanJS优于AngularJS?

  • 12KB小的文件体积,无依赖性
    ?

    69KBvs81KB
  • 使用一个模板引擎
    ?
  • 支持计算属性
    ?
  • DOM操作程序库不受限
    ?
  • 模板可在服务器上进行预编译
    ?
  • 支持合成(部分)视图
    ?
  • 支持1早期的IE浏览器版本
    ?

    7vs8
  • 与多个模板引擎兼容
    ?

一般资讯

1.具有自动视图筛选
AngularJS
CanJS
具有一套基于作用域参数(例如搜索时)的视图筛选机制,不需要编写很多额外代码。
2.使用一个模板引擎
AngularJS
CanJS
模板引擎可使UI开发更加简单灵活。
3.支持计算属性
AngularJS
CanJS
允许应用属性功能来计算对象的属性。
4.扩展HTML
AngularJS
CanJS
一些人认为这是一个优势,因为它节省了使用另一种模板语言的支出。
5.以MIT许可发布
AngularJS
CanJS
MIT许可是一个非常开放的许可证,允许未经授权的包括商业的所有用途。
允许从一个模板内部将视图模板嵌套进高层视图
主要版本数大于0,意味着分解由开发小组引入的API变化不具有兼容性。
拥有一个官方的或者知名的样板文件项目,已设置好推荐文件结构,使开发者能更快开始工作。
9.拥有一个项目生成器
AngularJS
CanJS
允许开发者使用内置工具或者类似Yeoman的支架工具自动设置一个新项目。

插件

拥有一个插件,包含便于制作视图动画的工具。
来自官方插件资源。插件使扩展功能或者整合其他服务更为简便。丰富的插件资源意味着有一个活跃的社区,而且意味着该框架具有很好的兼容性以及/或者灵活性。
3.具有专用插件资源。
AngularJS
CanJS
这表示该框架拥有一个活跃的生态系统以及广泛的社区支持,而且更加灵活,开发更为迅速。
包含公用程序,可使模型与其对应的服务器端表现同步,不需要编写jQuery样板文件ajax调用。
拥有可提供简易同步功能的插件,可将模型与HTML5本地存储器(LocalStorage)同步。

库 & 包

1.DOM操作程序库不受限
AngularJS
CanJS
并不要求或者严格提倡使用特定程序库(如jQuery,Zepto,或MooTools)来进行DOM操作。开发者可依据喜好来使用。
Bower是一个简便易用,类似npm的前端应用程序包管理器。
3.包括jQuery Lite
AngularJS
CanJS
当需要DOM操作时使用jQuery Lite元素。这样一来,开发者可在不需要包含整个程序库的情况下获得jQuery舒适的帮助功能。很多情况下,这样可以消除项目对于jQuery的依赖性。
Asynchronous Module Definition(异步模块定义)程序库允许简易模块化以及清洁编程。如果某个框架不兼容这些程序库,则它可能具有其他模块化内容的方式并解决依赖性,例如Dependency Injection(依赖注入)。

数据绑定

1.具有双向数据绑定
AngularJS
CanJS
模型和视图可进行绑定,以相互更新。
2.支持单向数据绑定
AngularJS
CanJS
视图可进行绑定,当一个可观察对象产生变化时会自动更新。
这使得应用与REST服务或本地存储器(LocalStorage)之间的数据传输更为简便,同时运用getter和setter函数降低了复杂性。
监控模型变化是一个知名的模式,某些情况下比“脏检查(dirty-checking)”表现更好。
检查所有变化,并更新相应的区域,某些情况下可比监控器表现更好。

性能

更小的文件体积意味着更快的读取速度。
路由选择允许与浏览器网址进行交互。如果您正在开发单页面应用,这对于提供良好的用户体验来说非常重要。
3.使用Promise函数式
AngularJS
CanJS
拥有Promises/A+规格的内部应用。在处理服务器响应时,Promise是回调函数的一个流行的替代方案。
支持可在服务器上进行预渲染的模板引擎,并可能提升页面读取速度,尤其是在低配置的设备上。
这提高了可测性以及模块性。
更低的依赖性意味着需要包含更少的额外脚本,通常可减少开发支出,提高读取速度。
7.异步更新DOM
AngularJS
CanJS
模型改变并不会立即导致视图更新,但是会进入队列并以组的形式进行分配。这比即时视图更新的表现好得多。

最佳的MV* 框架是什么?

展示全部
This page is currently only available in English.