React、Vue、Angular比较
相同之处:
React和vue:
- 使用Virtual Dom
- 提供响应式和组件化的视图组件
- 将注意力集中保持再核心库,而将其它功能如路由和全局状态管理交给相关的库
React比Vue有更丰富的生态系统
再React中,一切都是javascript。不仅仅是Html可以用jsx来表达,现在也越来越多的将css也纳入到javascript中来处理。
vue的整体思想是拥抱经典的web技术,并在其上进行扩展。
JSX vs Templates
React所有的组件的渲染功能都依靠JSX.JSX是使用XML语法编写javascript的一种语法糖。
vue也提供了渲染函数,支持JSX
原生渲染
React Native 能使你用相同的组件模型编写有本地渲染能力的App(ios和Android)。能同时跨多平台开发,对开发者是非常棒的。相应,vue和weex会进行官方合作,weex是阿里巴巴发起的跨平台用户界面开发框架,weex允许你使用vue语法开发不仅可以运行再浏览器端,还能被开发ios和android上的原生应用的组件
AngularJs
vue语法和AngularJS的很相似。因为AngularJs是vue早期开发的灵感来源。
AngularJs使用双向绑定,vue在不同组件间强制使用单向数据流。使得应用中的数据流更加清洗易懂
AngularJS使用脏检查
在AngularJs中,当watcher越来越多时会变得,越来越慢,因为作用域内的每一次变化,所有watcher都要重新计算。并且,如果一些watcher触发另一个更新,脏检查循环可能要运行多次。AngularJs用户常常要使用深奥的技术,以解决脏检查循环问题。
vue则根本没有这个问题,因为它使用基于依赖追踪的观察系统并且异步队列更新,所有的数据变化都是独立触发,除非他们之间有明确的依赖关系。
Angular开发必须使用TS,虽然vue和TS整合但还是可能不如Angular那么深入
即使,使用了vuex+vue Router的vue项目也比angular-cli生成的默认项目尺寸小
网友评论