库和框架,vue和react的比较
库:小而巧,只提供API,可以方便的从一个库切换到另外一个库,代码几乎不需要改变
框架:大而全的是框架,,框架与框架之间的切换比较困难
vue和react的比较
一)组件化方面
1)什么是模块化
模块化是从代码的角度进行分析,把一些可复用的代码,抽离为单个模块,便于项目开发和维护
2)什么是组件化
组件化是从UI界面角度进行分析,把一些可复用的UI元素,抽离为单独的组件,便于项目开发和维护
3)组件化的好处
随着项目规模的扩大,组件越来越多,方便把现有的组件,拼接为一个完整的页面
4)Vue是如何实现组件化
通过.vue文件,创建对应的文件,其中.vue文件需要包括三部分,分别为:
template 结构
script 行为
style 样式
5)React是如何实现组件化
React中有组件化的概念,但是,并没有像vue这样的模板文件,React中,一切都是以JS表现,结合ES6、ES7(async,await)语法
二)开发团队方面
1)React是由FaceBook前端官方团队进行维护和更新,因此React的维护团队技术实力雄厚
2)Vue第一版主要是尤雨溪进行维护,Vue更新到2.x之后,以尤雨溪为主导的开源小团队进行开发和维护
三)社区方面
1)在社区方面,React诞生的比较早,所以社区强大,一些常见的问题、坑、最优解决方案、文档、博客在社区可以方便的找到
2)Vue是近几年才火起来的,相对于React,社区要小些,有些坑可能还没有人踩过
四)移动App开发方面
1)Vue结合Weex技术,提供迁移到移动端App开发的体验
2)React结合ReactNative,提供无缝迁移到移动App的开发体验
React.js相对于Vue.js的灵活性更大一些,所以在处理复杂度比较大的项目时,技术方案有更多的选择,而vue提供更丰富的API,实现功能更简单,但是API多灵活性就受到限制;所以在复杂度大的时候选择React,做一些面向用户,复杂度不是很高时选择Vue,vue也可以做复杂度大的项目,主要是看对不同框架的驾驭度和业务复杂度做一个框架选型
React中常见的面试问题:https://segmentfault.com/a/1190000016885832?utm_source=tag-newest 链接