Vue 与 React 的比较

268 阅读1分钟

相同点

  • 都是javascript库
  • 组件化,现在有了Vue3.2,可重用性都非常好
  • 都使用了虚拟DOM + Diff算法, 虚拟DOM的价值:不在于提升了DOM的渲染速度,而是提供了函数式编程以及跨平台的准备
  • 使用了单项数据流,数据驱动视图
  • 函数式编程

不同点

项目ReactVue
维护团队脸书尤大大团队
跨平台开发成熟的React NativeVue的Weex仍在不断发展
学习成本学习成本相对较高相对简单,语法糖比较多
性能。。。尤大大说Vue3性能更好,Diff算法升级以及响应式原理改用了proxy实现
语法复杂性(针对JS相对薄弱的人)复杂简单
视图倾向于JSX拥抱JS模板拥抱HTML
响应式原理通过监听setState触发重新渲染虚拟DOM,然后根据Diff算法,更是视图遍历Vue实例的状态树,通过Object.defineProperty给每一个属性重写setter 和 getter, watcher通过getter收集需要观察的状态,当触发setter时,发送一个提醒给watcher,然后再更新虚拟DOM,通过Diff算法,更新视图
其他生态十分强大,官方文档非常优秀社区也很大,但不如React,仍在快速发展中;官方文档不如React,但也非常不错了