vue是尤雨溪在2014年发布的一个渐进式的js框架,它有着双向绑定的特性,同时它的虚拟dom技术让性能得到大大提升。最重要的就是它是渐进式的应用,你可以在你的项目中逐步地引入它,还有最重要的一点,它是开源的,并且一直在改进,目前最新的版本3更是让很多人为此迷之疯狂。
React是facebook开发出来的用于web开发的JAVAScript库,它主要用于元素的交互。它最大的特点就是他的组件功能,它将网页元素分成了一个个组件,这样各个组件可以互相组合,增加了复用性,它也是支持虚拟dom的。
两者都采用虚拟节点和懒加载,同时它们也都使用共享节点技术,因此两者的性能差不多。
Vue在启动速度和内存占用方面略微领先React,但是在运行状态方面,React要领先一些。
Vue采用标记来跟踪记录组件依赖,这样它可以有更高的刷新率。
vue有自己的社区,有自己的状态管理插件vuex,有自己的静态文件生成器vuepress,有路由插件,也支持和Nuxt完美融合。
React有着facebook这个金主爸爸,因此它的发展是迅猛的,它有着强大的社区。 它有着移动端的组件 react-native. 它也有路由组件react-router,它也有状态管理组件redux. 它有着丰富的UI库。 总之,react的生态圈非常庞大,它是支持服务器端渲染的。
软件编程中被人们说得最多的一句话就是没有银弹,也就是说没有一种方案可以解决所有问题,每个场景都有每个场景最适合的选择,对于一个初学者来说,vue入门更快一些,而react可能会稍微复杂一些,但是如果你学会了vue,再去学react,你会发现react其实也并不复杂。
其实很多时候选择什么框架并不是我们能决定的,很多时候是公司决定的,当你去一个以vue为主的公司中,那么你可能就需要学习使用vue,同理,如果你去的公司项目使用的是react,那么你只能选择接受学习react,否则你可能失去那份工作。