一、Vue
它是一个简单而直接的框架。它擅长于消除Angular开发人员面临的复杂性。并提供了两个主要优点:可视化DOM和基于组件。并有广泛和详细的文档具有javascript背景的简单语法程序员可以很容易地开始使用Vuejs灵活设计app结构
Vue被称作MVVM框架:M就是model,V就是view,(数据模型视图,视图数据模型)以前接触到的框架大多是单项绑定(视图跟数据模型绑定,不是数据模型跟视图绑定),Vue是双向绑定的(视图跟数据模型绑定,数据迷信又跟视图绑定),如果视图变了数据模型会变,数据模型变了视图也会变。体现在代码里面就是:如有一个input标签,最终要获取到input标签中填变量的值,如果那个变量变了,input中展示的值就变了,如果input中展示的内容变了,那个变量也会变。
vue的优势主要体现在开发产大型企业后台项目,因为以前在做项目中常面临一个问题,如果写了很多功能,可能会面临变量越来越多的问题,全局变量也超级多。比如当在一个页面引入jQuery的时候,相当于把jQuery文件写入当前页面,如果浏览器加载页面,就要把这个jQuery文件下载下来,如果每个html页面都引入jQuery,效率会很低,而且每引入一个东西的时候,就相当于定义了一个全局变量,这个变量要加$符号,那如果又引入第三方框架,那个框架中也有一个$符号,这时候会发现引入不进来了,变量名冲突了。所有传统的开发方式会导致页面有大量的全局变量,不利于维护和版本升级,而且命名一定要有规则,如果没有规则,很容易变量名冲突。所以vue中采用模块化的开发方式,解决了这个问题。
二、React
React性能出众,代码逻辑非常简单。组件的可重用性使得在应用程序的其他部分协作和重用组件变得容易。但当您没有Javascript的实际操作经验时,React不是推荐的选项。另外,对于没有经验的开发人员,JSX的学习曲线有点困难。
React起源于Facebook的内部项目,因为该公司对市场上所有JavaScriptMVC框架,都不满意,就决定自己写一套,用来架设Instagram的网站。做出来以后,发现这套东西很好用,就在年5月开源了。
React的特点和优势
虚拟DOM
我们以前操作dom的方式是通过document.getElementById()的方式,这样的过程实际上是先去读取html的dom结构,将结构转换成变量,再进行操作
而reactjs定义了一套变量形式的dom模型,一切操作和换算直接在变量中,这样减少了操作真实dom,性能真实相当的高,和主流MVC框架有本质的区别,并不和dom打交道
组件系统
react最核心的思想是将页面中任何一个区域或者元素都可以看做一个组件