很多共同之处有:
使用虚拟DOM高效的更新视图,
提倡组件化
数据驱动视图
diff算法进行优化
router 库实现url到组件的映射
状态管理
但是在实现上又有所不同
组件化的好处
组件是独立可复用的
可以使用组件构建大型应用
提高开发效率 测试性 复用性
降低耦合度,可以在接口保持不变的情况下,可以替换不同的组件完成需求
调试方便,出现问题时,可以用排除法直接移除组件或者根据报错的组件快速定位问题,之所以能快速定位,是因为组件间低耦合,职责单一,所以逻辑会比分析整个系统简单
提高可维护性 职责单一,可被复用,所以对代码优化可以获取系统的整体升级
vue react组件相同点
组件化,通过将页面拆分成一个一个小的可复用的单元提高代码复用和开发效率
vue react 有相同的套路,比如都有父子组件传参, 数据状态管理,前端路由等
差异点
- 数据的使用
react 采用单向数据流方式
vue 采用数据响应式的形式
- 模板的使用
react 推荐JSX+ Iinline style ,也就是吧html 和 css 全部写进js中,all in js
vue , 推荐做法是 template的单文件组件格式,html css js 写在同一个文件
- 数据可变不可变
react 最好数据不可变
vue 数据可变