首页 >web前端 >前端问答 >angular和vue有什么区别

angular和vue有什么区别

青灯夜游
青灯夜游原创
2022-03-07 14:43:5423516浏览

区别:1、vue占用空间较小,而angular较大;2、Vue比Angular灵活,可按照不同需要去组织项目的应用代码;3、vue简单易学,angular的上手难度较高;4、angular指令是“ng-xxx”,vue指令是“v-xxx”。

angular和vue有什么区别

本教程操作环境:windows7系统、vue2.9.6&&angular6版,DELL G3电脑。

Angular简介

Angular是一个 JavaScript 框架,最初由Misko Hevery 和Adam Abrons于2009年开发,后来成为了Google公司的项目。

Angular弥补了HTML在构建应用方面的不足,其通过使用标识符(directives)结构,来扩展Web应用中的HTML词汇,使开发者可以使用HTML来声明动态内容,从而使得Web开发和测试工作变得更加容易。

angularjs的特点:

1、数据的双向绑定:view层的数据和model层的数据是双向绑定的,其中之一发生更改,另一方会随之变化,这不用你写任何代码!

2、代码模块化,每个模块的代码独立拥有自己的作用域,model,controller等。

3、强大的directive可以将很多功能封装成HTML的tag,属性或者注释等,这大大美化了HTML的结构,增强了可阅读性。

4、依赖注入,将这种后端语言的设计模式赋予前端代码,这意味着前端的代码可以提高重用性和灵活性,未来的模式可能将大量操作放在客户端,服务端只提供数据来源和其他客户端无法完成的操作。

5、测试驱动开发,angularjs一开始就以此为目标,使用angular开发的应用可以很容易地进行单元测试和端对端测试,这解决了传统的js代码难以测试和维护的缺陷。

vue简介

Vue (读音 /vjuː/,类似于 view) 是一套用于构建用户界面的渐进式JavaScript框架。与其它大型框架不同的是,Vue 被设计为可以自底向上逐层应用。Vue 的核心库只关注视图层,不仅易于上手,还便于与第三方库或既有项目整合。另一方面,当与现代化的工具链以及各种支持类库结合使用时,Vue 也完全能够为复杂的单页应用(SPA)提供驱动。

Vue.js 的目标是通过尽可能简单的 API 实现响应的数据绑定和组合的视图组件。

Vue.js 自身不是一个全能框架——它只聚焦于视图层。因此它非常容易学习,非常容易与其它库或已有项目整合。另一方面,在与相关工具和支持库一起使用时  ,Vue.js 也能驱动复杂的单页应用。

Vuejs的特点:

1、轻量级的框架

2、双向数据绑定

3、指令

4、模块化,目前最热的方式是在项目中直接使用ES6的模块化,结合Webpack进行项目打包。

5、组件化,创造单个component后缀为.vue的文件,包含template(html代码),script(es6代码),style(css样式)。

angular和vue的区别

1、体积和性能

vue占用空间更小,比如一个包含了 Vuex Vue Router 的 Vue 项目 (gzip 之后 30kB) ,比angular-cli 生成的默认项目尺寸 (~65KB) 还是要小得多。

在渲染性能上,这两个框架都很快,性能上几乎没有差别。

2、开发效率

都提供了各自的脚手架工具,帮助提高从开发到构建打包的整套过程,另外均可以基于组件化开发,编写可复用的组件,大大较少重复性的工作。但angular凭借 Typescript 本身比 JavaScript 更加工程化的优势,在都是团队开发的情况下,angular会更具优势。

3、灵活性

Vue 相比于 Angular 更加灵活,可以按照不同的需要去组织项目的应用代码。比如,甚至可以直接像引用jquery那样在HTML中引用vue,然后仅仅当成一个前端的模板引擎来用。

4、可维护性

我理解的可维护性包括两个层次,一是代码的可读性,二是可重构性。同样是因为对TS(能提供静态类型检查)的支持不够全面,使得vue在这两个层次都有些不足。vue作者本人也承认vue在TS 的支持上还有所不足,在3.0版本中将会有所改进。

5、学习成本高

vue简单易学,而angular的上手难度较高。

AngularJS的学习成本高,比如增加了Dependency Injection特性,而Vue.js本身提供的API都比较简单、直观。

6、指令

angular的指令都是ng-xxx,而vueJS的指令都是v-xxx。

(学习视频分享:vuejs教程web前端

以上是angular和vue有什么区别的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn