vue和angular的异同
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了vue和angular的异同相关的知识,希望对你有一定的参考价值。
参考技术A 1、都支持数据绑定,vue和angular绑定都可以用;2、都支持内置指令和自定义指令
3、都支持内置过滤器和自定义过滤器
4、都不支持低版本浏览器
angular比vue更复杂,学习成本更高。比如angular增加了依赖注入(dependency injiction)特性。但却是在构建完整复杂应用方面,angular是更好的选择。
Vue.js 是轻量级的开发框架,本身提供的API都比较简单、直观,很适合开发小规模灵活的 Web 应用程序,可以快速地掌握它的全部特性并投入开发。
angular依赖对数据做脏检查,所以随着程序复杂程度的提高,watcher会越来越多,vue使用基于依赖追踪的观察,并且使用异步队列更新,所有的数据都是独立触发的,且vue的双向绑定是基于ES5 的 getter/setter来实现的,而angular而是由自己实现一套模版编译规则,需要进行所谓的“脏”检查,vue则不需要。因此,vue在性能上更高效,但是代价是对于ie9以下的浏览器无法支持。
vue相当于angular要变得小巧很多,运行速度比angular快.
vue指令用v-xxx,angular用ng-xxx,angular用的指令是ng-前缀的,而vue是v-
vue有组件化概念,angular中没有
vue中数据放在data对象里面,angular数据绑定在$scope上面。
Angular 1 使用双向绑定,Vue 在不同组件间强制使用单向数据流。这使应用中的数据流更加清晰易懂。
Vue.js 有更好的性能,并且非常非常容易优化,因为它不使用脏检查。Angular,当 watcher 越来越多时会变得越来越慢,因为作用域内的每一次变化,所有 watcher 都要重新计算。并且,如果一些 watcher 触发另一个更新,脏检查循环(digest cycle)可能要运行多次。 Angular 用户常常要使用深奥的技术,以解决脏检查循环的问题。有时没有简单的办法来优化有大量 watcher 的作用域。Vue.js 则根本没有这个问题,因为它使用基于依赖追踪的观察系统并且异步列队更新,所有的数据变化都是独立地触发,除非它们之间有明确的依赖关系。唯一需要做的优化是在 v-for 上使用 track-by。
以上是关于vue和angular的异同的主要内容,如果未能解决你的问题,请参考以下文章