vue和angularjs:
1、两者都支持过滤器(自定义过滤器),都支持指令(自定义指令),实现双向绑定的时候都比较简答,不像react那样麻烦。
2、两者都不支持IE8以下的浏览器。
3、vue相对于angular来说要更容易上手,初学者打开菜鸟可以看看,直接看官网也可以,angularjs学习成本很高,需要会不少东西
4、angularjs路由配置比起vue要稍微复杂点,其次,AngularJS依赖对数据做脏检查,所以Watcher越多越慢
5、vue使用基于依赖追踪的观察并且使用异步队列更新。所有的数据都是独立触发的。
这些都是细节问题,个人觉得开发的时候还是要看项目,vue适用于于开发数据量大的项目,具体可以参考这篇文章点击打开链接
vue和react:
1、两者本着一切皆组件的思想。
2、对于类似router这样的核心包也是需要当做第三方插件一样导入的。
3、都有钩子函数
不同点是话不多说看代码:
这是vue版:
<div id="app"> <p>{{ message }}</p> <button v-on:click="reverseMessage">Reverse Message</button> </div> new Vue({ el: '#app', data: { message: 'Hello Vue.js! }, methods: { reverseMessage: function () { this.message = this.message.split('').reverse().join(''); } } });这是react版:
class App extends React.Component { constructor(props) { super(props); this.state = { message: 'Hello React.js!' }; } reverseMessage() { this.setState({ message: this.state.message.split('').reverse().join('') }); } render() { return ( <div> <p>{this.state.message}</p> <button onClick={() => this.reverseMessage()}> Reverse Message </button> </div> ) } } ReactDOM.render(App, document.getElementById('app'));同样的功能,不一样的代码。