vue与angular的区别

作者: comingzy | 来源:发表于2017-09-17 00:42 被阅读207次

    最近许多人都在讨论angular和vue的区别,我也查阅了许多资料,可以说是对它们的认识更清晰了一些,总结了以下几点,可能还有些不全面,但是大家还是可以看看滴!

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

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

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

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

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

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

    7.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("angular");
            }
        }
    })
    

    可以看出angular所有的数据和方法都是挂载在$scope上,而vue的数据和方法都是挂载在vue上,只是数据挂载在vue的data,方法挂载在vue的methods上。

    以上是我对vue和angular区别的理解和总结,参考参考,如果有需要补充的,大家可以给我留言,我们可以一起讨论讨论噢

    vue与angular的区别

    相关文章

      网友评论

        本文标题:vue与angular的区别

        本文链接:https://www.haomeiwen.com/subject/ehtysxtx.html