Augular:用于构建清晰简洁的动态 web 应用。html
React: 引入虚拟 dom 解决须要大量 dom 操做的复杂页面的性能问题。vue
Vue: 引入虚拟DOM、双向数据绑定、指令解析等,借鉴了Augular和React的优势。react
对比 | Angular | Vue | React |
---|---|---|---|
基于组件 | 擅长 | 擅长 | 擅长 |
依赖标准 | Typescript | Es5/Es6 | Es6 |
底层技术 | 模版 | 模版+脚步+样式 | jsx |
数据绑定 | 双向 | 双向+单向 | 单向 |
支持原生开发 | 支持(nativescript、inonic) | 支持 (weex.js) | 支持 (react-native/react-native-renderer) |
服务端渲染 | |||
学习曲线 | 陡峭 | 简单 | 中等 |
优势 | 具备构建一个 CRUD 应用时可能用到的全部技术:数据绑定、基本模板指令、表单验证、路由、深度连接、组件重用、依赖注入 | 轻量、组件化、渐进式、使用虚拟 dom,diff 算法优化页面性能。很适合数据不够复杂的轻应用 | 单向数据流,数据易管理;使用虚拟 dom,diff 算法优化页面性能;react 自己库中内容少,社区具备丰富的组件库,按需引入第三方库,开发更灵活。很适合数据多的复杂应用。 |
缺点 | 数据变整个 dom 都会被更新,数据越大性能越差。不适合须要频繁操做 dom 的应用 | 数据多时,数据流不易维护 | 不够轻量 |
应用场景 | 用于须要大量 crud 操做的应用 | 适合频繁操做 dom 的数据不太复杂的应用 | 适合 频繁操做 dom 的数据复杂的应用 |
以下几个点来考虑选择何种框架:git
是否能更好的解决业务中的问题angularjs
参考资料github
三大框架对比react-native
React 与 Vue 比较weex