vue和angular的区别:
相同:
1.数据绑定:vue和angular绑定都可以用{{}}
2.都支持内置指令和自定义指令
3.都支持内置过滤器和自定义过滤器。
区别:
1.学习成本和API 设计:vue相比于angular来说更加的简单
angular:学习成本比较高,比如增加了dependency injiction特性。Angular 尽管学习曲线较为陡峭,但却是构建完整复杂应用的好选择。
vue:本身提供的API都比较简单、直观。Vue.js 是轻量级的开发框架,很适合开发小规模灵活的 Web 应用程序;
在 API 与设计两方面上 vue比 angular 简单得多,因此你可以快速地掌握它的全部特性并投入开发。
2. 性能上:
angular:依赖对数据做脏检测,所以watcher越来越多;
vue:使用基于依赖追踪的观察,并且使用异步队列更新,所有的数据都是独立触发的。
.vue的双向绑定是基于ES5 的 getter/setter来实现的,而angular而是由自己实现一套模版编译规则,需要进行所谓的“脏”检查,vue则不需要。
因此,vue在性能上更高效,但是代价是对于ie9以下的浏览器无法支持。
3.运行速度:vue相当于angular要变得小巧很多,运行速度比angular快.
4.指令:vue指令用v-xxx,angular用ng-xxx
angular用的指令是ng-前缀的,而vue是v-
5.组件:vue有组件化概念,angular中没有
6.数据存放位置: vue中数据放在data对象里面,angular数据绑定在$scope上面。
7.挂载数据方式:
angular挂载数据的方法
var app = angular.module('myApp', []);
app.controller('customersCtrl', function($scope) {
$scope.list = [{},{},{}];
$scope.method = function(){
console.log("angular");
}
})
vue挂载数据的方法
var V = new Vue({
el:"#app",
data:{
list:[{},{},{}]
},
methods:{
method:function(){
console.log("vue");
}
}
})
可以看出angular所有的数据和方法都是挂载在$scope上,
而vue的数据和方法都是挂载在vue上,只是数据挂载在vue的data,方法挂载在vue的methods上。
8.数据绑定
Angular 1 使用双向绑定,
Vue 在不同组件间强制使用单向数据流。这使应用中的数据流更加清晰易懂。
10.总结:Vue.js 有更好的性能,并且非常非常容易优化,因为它不使用脏检查。Angular,当 watcher 越来越多时会变得越来越慢,因为作用域内的每一次变化,所有 watcher 都要重新计算。并且,如果一些 watcher 触发另一个更新,脏检查循环(digest cycle)可能要运行多次。 Angular 用户常常要使用深奥的技术,以解决脏检查循环的问题。有时没有简单的办法来优化有大量 watcher 的作用域。Vue.js 则根本没有这个问题,因为它使用基于依赖追踪的观察系统并且异步列队更新,所有的数据变化都是独立地触发,除非它们之间有明确的依赖关系。唯一需要做的优化是在 v-for 上使用 track-by。
vue和angular的区别:的更多相关文章
- vue 与 angular 的区别
vue仅仅是mvvm中的view层,只是一个如jquery般的工具库,而不是框架,而angular而是mvvm框架. vue的双向邦定是基于ES5 中的 getter/setter来实现的,而angu ...
- angular和vue还有jquery的区别
angularjs简单介绍和特点 首先angular是一个mvc框架, 使用mvc解耦, 采用model, controller以及view的方式去组织代码, 会将一个html页面分成若干个模块, 每 ...
- Vue-起步篇:Vue与React、 Angular的区别
毋庸置疑,Vue.React. Angular这三个是现在比较火的前端框架.这几个框架都各有所长,选择学习哪种就得看个人喜好或者实际项目了.相比之下, Vue 是轻量级且容易学习掌握的. 1.Vue和 ...
- vue 和ng的区别
vue: 读音: v-u-e view vue到底是什么? 一个mvvm框架(库).和angular类似 比较容易上手.小巧 mvc: ...
- 三种Web前端框架比较与介绍--Vue, react, angular
一.Angular 1.MVVM(Model)(View)(View-model): 2.模块化(Module)控制器(Contoller)依赖注入: 3.双向数据绑定:界面的操作能实时反映到数据,数 ...
- 手把手教你使用Vue/React/Angular三大框架开发Pagination分页组件
DevUI是一支兼具设计视角和工程视角的团队,服务于华为云DevCloud平台和华为内部数个中后台系统,服务于设计师和前端工程师.官方网站:devui.designNg组件库:ng-devui(欢迎S ...
- 技术趋势:React vs Vue vs Angular
React.Vue 和 Angular 这两年发展状况如何?2019 年哪个技术最值得学习? 前几天 Medium 上有一位作者发表了一篇关于 React.Vue 和 Angular 技术趋势的文章( ...
- 前端开发组件化设计vue,react,angular原则漫谈
前端开发组件化设计vue,react,angular原则漫谈 https://www.toutiao.com/a6346443500179505410/?tt_from=weixin&utm_ ...
- 前端三大主流框架的对比React、Vue、Angular
前端三大主流框架的对比React.Vue.Angular React 起源于 Facebook 的内部项目,用来架设 Instagram 的网站, 并于 2013年 5 月开源.React 拥有较高的 ...
随机推荐
- 一个能快速写出实体类的Api文档管理工具
今天各种MVC框架满天飞,大大降低了编码的难度,写实体类就没有办法回避的一件事了,花大把的时间去做一些重复而且繁琐的工作,实在不是一个优秀程序员的作风,所以多次查找和尝试后,找到一个工具类网站——Ap ...
- Liunx-mv命令
mv要是不明白什么意思,你就把它想象成Windows里面剪切文件夹/文件,然后再去粘贴的操作,你就会明白的. 1. 移动一个文件夹(rightr文件夹,移动到/201904/a目录) 出现这个错误的原 ...
- 【死磕 Spring】----- IOC 之 获取 Document 对象
原文出自:http://cmsblogs.com 在 XmlBeanDefinitionReader.doLoadDocument() 方法中做了两件事情,一是调用 getValidationMode ...
- 『Shell编程』学习记录(1)
例1. $ cat ex1 date pwd cd .. $ bash ex1 # 运行,显示当前日期和当前目录,但没有执行返回上级目录,因为执行的时候终端会产生一个子shell(类似于C语言调用函数 ...
- NuGet 手动清除缓存不起作用
问题 有时更新了一些内网的程序库/包,但仅仅是一些小的更改,不想增加版本号再推送到内网服务器.手动删除了 .nuget 文件夹下的相关包文件,但是使用 Visual Studio 重新构建的时候,其使 ...
- Koa 中的错误处理
不像 express 中在末尾处注册一个声明为 (err, req, res, next) 中间件的方式,koa 刚好相反,在开头进行注册. app.use(async (ctx, next) =&g ...
- 个人完善的springboot拦截器
import lombok.extern.slf4j.Slf4j; import org.manage.management.permission.interceptor.LoginIntercept ...
- SmartSql 常见问题
常见问题 为什么不支持 Linq? SmartSql 希望 开发人员更多的接触 Sql ,获得绝对的控制权与安全感.所以目前没有计划支持 Code First 编程模式. 我想好了Sql怎么写,然后再 ...
- Django学习笔记(2)——模型,后台管理和视图的学习
一:Web投票示例 本节我们首先从全局范围再复习一下Django的概念,让自己对Django的设计理念, 功能模块,体系架构,基本用法有初步的印象. Django初始的详细博客内容:请点击我 该应用包 ...
- 基于“formData批量上传的多种实现” 的多图片预览、上传的多种实现
前言 图片上传是web项目常见的需求,我基于之前的博客的代码(请戳:formData批量上传的多种实现)里的第三种方法实现多图片的预览.上传,并且支持三种方式添加图片到上传列表:选择图片.复制粘贴图片 ...