2018年前端炒的火热的莫非于三大框架,angular、vue、react,谈谈我对这三大框架的理解,接下来一起看下去吧。
期初在前三四年或者更早,前端还没被完全分离出来,原生js开发前端页面,似乎并不优雅,好比我们盖房子,一块砖一块砖的盖,很耗时,也不方便维护,渐渐地jQuery库的产生,提高了开发人员的效率,减少了浏览器的兼容,一时间很多涨粉,到现在一些旧的项目仍然在使用,but,他没有mvc,mvvm构架,需要自己进行配置。
后来出现了mvc框架的angular,这个效率比较低,只要发生变化,就得重新遍历计算;
然后出现了react,react的虚拟dom减少了dom操作,降低了项目成本,提高效率和程序性能,但是react是基于view层的,他需要配合一些其他的框架,如flux,redux等,如果拿react跟vue比较的话,使用起来会相对复杂,比如,不能使用指令,遍历不方便,;
而vue相对react而言,没有react灵活,搭配自如,但是他开发起来很高效,vue的插件,组件,生态系统对于我们一般的项目已经足够了,虽然vue的是个人主导的,react是Facebook团队维护的,社区比较繁荣,但vue适合很多项目,也正在慢慢的扩大,前景也是很不错的。
Angular
作为元老级的Angular,前后经angular1、angular2、angular4,每个版本似乎都是一个新的框架。
angular1中的ng-if和vue的v-if很相像,因为vue的指令系统就是从angular1中获取的灵感,而且angular1中 的很多问题在vue中得以解决;
到了angular2,他比起1来说,是一个全新的框架,比如说,有更优秀的组件系统,api也变了很多等等,虽然改进了很多,但还是很臃肿;
相比于angular2,angular4的功能列表中添加了许多新功能,同时还有一些旧功能的改进,使用angular4程序将会消耗更少的空间,比起以前的版本运行的更快。
使用场景
当项目对性能要求不高的时候,可以使用angular,或者一些曾经一直用的angular1的项目有必要升级一下了,而且哪有不要求性能的项目,所以angular对于一些新型项目慎重考虑...(想看更多就到PHP中文网AngularJS开发手册中学习)
React
官方说react是因为Facebook对市场上的mvc框架都不满意,自己写了一套用来架构Instagram网站,因为好用,2013年5月开源的,到先在2017年底,react已经升级到了16.2,路由react-router3升为react-router4,react-router-dom
虚拟dom
react不得不提的是虚拟DOM(Virtual DOM),当页面初次加载的时候会产生一颗dom树,内存中会产生一颗render树,当数据发生更改的时候,会将更改的内容和存有的render树进行对比,找出最优的算法,然后更改render树,最后重新生成页面的dom树,有了虚拟dom,前端的性能提高了很多。
组件化
react的组件化思想尤为体现,将view层分成各个独立的组件,降低耦合度,组件化使得组件间可组合,可重用,可维护,从而大大提高开发效率
灵活性
react是基于view层的,要想发挥他的作用,必须配合一些插件,例如flux,redux等,当然,可以配合更多的库来达到更好的效果
使用场景
react的使用基本上是大型项目的首选,组件化和灵活性是大型项目的条件,其次,react native可以让react运行在移动设备上。
Vue
Vue是2014年2月开源的,尤大牛主导的vue编写,到目前为止升级到了v2.5,vue的全家桶Vue-router,Vuex,服务端渲染,以及vue的虚拟dom,组件化,性能,不差于react,对于没有Angular 和react经验的团队,并且规模不是很大的前端项目来说,vue是一个很好的选择
总结
框架的选型不仅要看项目本身,还要综合公司团队,团队的技术栈可能直接导致项目框架的选型
好了,本篇文章到这就结束了(想看更多就到PHP中文网AngularJS使用手册中学习),有问题的可以在下方留言提问。
以上是Angular、Vue、React三大框架鼎力2018的详细内容。更多信息请关注PHP中文网其他相关文章!

调用方法:1、类组件中的调用可以利用React.createRef()、ref的函数式声明或props自定义onRef属性来实现;2、函数组件、Hook组件中的调用可以利用useImperativeHandle或forwardRef抛出子组件ref来实现。

本篇文章带大家聊聊vue指令中的修饰符,对比一下vue中的指令修饰符和dom事件中的event对象,介绍一下常用的事件修饰符,希望对大家有所帮助!

本篇文章给大家整理分享8个GitHub上很棒的的 Vue 项目,都是非常棒的项目,希望当中有您想要收藏的那一个。

如何覆盖组件库样式?下面本篇文章给大家介绍一下React和Vue项目中优雅地覆盖组件库样式的方法,希望对大家有所帮助!


热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

MinGW - 适用于 Windows 的极简 GNU
这个项目正在迁移到osdn.net/projects/mingw的过程中,你可以继续在那里关注我们。MinGW:GNU编译器集合(GCC)的本地Windows移植版本,可自由分发的导入库和用于构建本地Windows应用程序的头文件;包括对MSVC运行时的扩展,以支持C99功能。MinGW的所有软件都可以在64位Windows平台上运行。

安全考试浏览器
Safe Exam Browser是一个安全的浏览器环境,用于安全地进行在线考试。该软件将任何计算机变成一个安全的工作站。它控制对任何实用工具的访问,并防止学生使用未经授权的资源。

适用于 Eclipse 的 SAP NetWeaver 服务器适配器
将Eclipse与SAP NetWeaver应用服务器集成。

SublimeText3 英文版
推荐:为Win版本,支持代码提示!

mPDF
mPDF是一个PHP库,可以从UTF-8编码的HTML生成PDF文件。原作者Ian Back编写mPDF以从他的网站上“即时”输出PDF文件,并处理不同的语言。与原始脚本如HTML2FPDF相比,它的速度较慢,并且在使用Unicode字体时生成的文件较大,但支持CSS样式等,并进行了大量增强。支持几乎所有语言,包括RTL(阿拉伯语和希伯来语)和CJK(中日韩)。支持嵌套的块级元素(如P、DIV),