首先在进行对比之前我们先来介绍下什么是模块化,什么是组件化。他们的好处是什么?
- 模块化:是从代码的角度进行分析的,把一些可复用的代码抽离为可复用的单个模块
- 组件化:是从UI的角度进行分析。把一些可服用的UI元素抽离为单个的组件;
- 二者好处:便于项目的维护和开发。
- 组件化的好处:随着项目的规模的增大,组件越来越多,很方便就能把现有的组件拼接出一个页面
组件化方面对比:
-
VUE是如何实现组件化的:
vue.component() vue.extends() .vue结尾的模板文件
通常使用.vue文件,来创建对应的组件
- template 结构
- script 行为
- style 样式
vue是通过export default从script中导出组件的。虽然只导出了script中的行为, 但是.vue文件是通过webpack中的loader编译过后的抛出的,所以webpack将结构样式行为都编译到了一起导出的。所以在组件引入的时候是完整的vue文件。也就是说是一个完整的组件。
-
react是如何实现组件化的:
react是有组件化的概念的。但是没有vue这样的组件模板文件,所以它是通过js来创建组件的。一切都以js来表现的。结构行为样式都是。(es6+es7)
开发团队方面:
-
vue:
第一版的时候是坐着尤雨溪专门进行维护的,到2.x之后也是又一个以尤雨溪为主导的开源 小团队进行开发和维护。
-
react
是Facebook前端团队进行维护和更新的;因此,react的维护开发团队实力比较雄厚
社区方面方面:
-
react:
由于诞生的比较早,所以社区比较强大,一些常见的问题、坑、最优的解决方案、文档、博客在社区中都是可以很方便的就可以找到的。
-
vue:
是近两年才火起来的,所以,他的社区相对于react来说,要小一点,可能有的一些坑还没有踩到过。