vue与angular 区别

特别需要注意的是,两者都有双向数据绑定,Vue在不同组件间强制使用单向数据流。这使应用的数据更加清晰结构易懂。

1:vue仅仅是mvvm中的view层,只是一个如jquery般的工具库,不能算是一个完整的框架,而angular是mvvm框架。

2:vue的双向邦定是基于ES5 的 getter/setter来实现的,而angular而是由自己实现一套模版编译规则,需要进行所谓的“脏”检查,vue则不需要。因此,vue在性能上更高效,但代价是对于ie9以下的浏览器无法支持。

3:在 vue 中指令和组件分得更清晰。指令只封装 DOM 操作,而组件代表一个自给自足的独立单元 —— 有自己的视图和数据逻辑。在 angular 中两者有不少相混的地方。

4.vue需要提供一个el对象进行实例化,后续的所有作用范围都只能在el对象下,一个页面,可以多个vue实例,而angular好像不是这么玩的。

5:在 API 与设计两方上 vue比 angular 简单得多,因此你可以快速地掌握它的全部特性并投入开发。

6:vue是一个更加灵活开放的解决方案。它允许你以希望的方式组织应用程序,而angular 是在任何时候都必须遵循它制定的规则,这也使 vue 能适用于各种项目。

7:angular用的指令是ng-前缀的,而vue是v-,风格其实一样的,数据绑定的方式也是一样的两个{}

8:angular挂载数据的方法

var app = angular.module('myApp', []);
app.controller('customersCtrl', function($scope) {
    $scope.list = [{},{},{}];
    $scope.method = function(){
        console.log("angular");
    }
})

vue挂载数据的方法

var V = new Vue({    
    el:"#app",    
    data:{        
        list:[{},{},{}]
    },    
    methods:{        
        method:function(){            
            console.log("vue");
        }
    }
})

angularJS的所有指令和方法都是绑定在$scope上的,而vueJS是new出来一个实例,所有的方法和指令都在这个实例上,一个页面上可以有多个vue实例,但是angularJS的对象只能有一个。

Logo

前往低代码交流专区

更多推荐