1.vue仅仅是mvvm中的view层,只是一个如jquery般的工具库,而不是框架,而angular是mvvm框架。
2.vue的双向邦定是基于ES5 的 getter/setter来实现的,而angular而是由自己实现一套模版编译规则,需要进行所谓的“脏”检查,vue则不需要。因此,vue在性能上更高效,但是代价是对于ie9以下的浏览器无法支持。
3.在 vue 中指令和组件分得更清晰。指令只封装 DOM 操作,而组件代表一个自给自足的独立单元 —— 有自己的视图和数据逻辑。在 angular 中两者有不少相混的地方。
4.在 API 与设计两方上 vue比 angular 简单得多,因此你可以快速地掌握它的全部特性并投入开发。
5.vue是一个更加灵活开放的解决方案。它允许你以希望的方式组织应用程序,而不是在任何时候都必须遵循 angular制定的规则,这让 vue 能适用于各种项目。
6.angular用的指令是ng-前缀的,而vue是v-,风格其实一样的,数据绑定的方式也是一样的两个{}
7.angular挂载数据的方法
vue挂载数据的方法
可以看出angular所有的数据和方法都是挂载在$scope上,而vue的数据和方法都是挂载在vue上,只是数据挂载在vue的data,方法挂载在vue的methods上。
8. 性能上:
angular:依赖对数据做脏检测,所以watcher越来越多;
vue:使用基于依赖追踪的观察,并且使用异步队列更新,所有的数据都是独立触发的。
.vue的双向绑定是基于ES5 的 getter/setter来实现的,而angular而是由自己实现一套模版编译规则,需要进行所谓的“脏”检查,vue则不需要。
因此,vue在性能上更高效,但是代价是对于ie9以下的浏览器无法支持。
9.运行速度:vue相当于angular要变得小巧很多,运行速度比angular快.
10.指令:vue指令用v-xxx,angular用ng-xxx
angular用的指令是ng-前缀的,而vue是v-
11.组件:vue有组件化概念,angular中没有
12.数据存放位置: vue中数据放在data对象里面,angular数据绑定在$scope上面。
相同:
1.数据绑定:vue和angular绑定都可以用{{}}
2.都支持内置指令和自定义指令
3.都支持内置过滤器和自定义过滤器。