angular和vue
vue 是渐进式框架。与其它大型框架不同的是,vue 被设计为可以自底向上逐层应用。Vue 的核心库只关注视图层,不仅易于上手,还便于与第三方库或既有项目整合。另一方面,当与现代化的工具链以及各种支持类库结合使用时,Vue 也完全能够为复杂的单页应用提供驱动。
为什么好多人在写项目的时候,都选择vue而不选择Angular,这只是本人的见解,
vue很容易上手,可能你在学过vue再去接Aangular觉得两个有很多相似的地方,但是angular会有点繁琐,总体来说,vue比angular简单得多,vue是一个更加灵活开放的解决方案,上手快,还可以轻松地将其与第三方库进行整合并与现有项目一起使用,Vue 提供了 v-model 指令(用于更新用户输入事件的数据),使得在表单输入和结构元素上实现双向绑定变得很容易。它可以选择正确的方式来更新输入类型相关的元素。而且 Vue 的学习曲线很低,同时对于经验较少的开发人员和初学者来说,也能够快速地学习和理解 Vue。
vue项目中都是以v-开头
angular 是以 ng-开头
vue:
<div id="app">
{{ message }}
</div>
new Vue({
el: '#app',
data: {
message: '我是vue'
}
})
angular:
<div ng-app="myApp">
{{message}}
<div ng-controller='cltr1>
</div>
</div>
var app = angular.module('myApp', []); // 参数2:依赖项
app.controller('cltr1', function($scope) {
$scope.message = "我是angular";
});
vue双向绑定
div id="app">
<input v-model="message">
</div>
new Vue({
el: '#app',
data: {
message: '我是vue'
}
})
angular双向绑定
<div ng-app="myApp" ng-controller="ctrl1">
<input ng-model="message">
</div>
var app = angular.module('myApp', []);
app.controller('ctrl1', function($scope) {
$scope.message = "angular";
});
注:angular点击事件必须加() ng-click=onclick()
angular是基于数据驱动, 适合做数据操作比较繁琐的项目,angular适用于单页面开发,是一个比较完善的mvvm框架, 包含模板和双向数据绑定, 路由, 模块化, 服务, 过滤器, 依赖注入等所有功能,但是angular验证功能比较薄弱, 需要写很多模板标签, 而且ngview只能有一个, 不能嵌套多个视图,angular的兼容性比较好