搜索

首页  >  问答  >  正文

前端 - angularjs中的$scope与scope有什么区别

在学习angularjs的过程中一直有个疑问,$scope与scope有什么区别?

天蓬老师天蓬老师2744 天前697

全部回复(2)我来回复

  • 習慣沉默

    習慣沉默2017-05-15 16:57:58

    $scope是angular内部提供的变量。

    scope一般指的是scope directive service等等这种概念。

    从变量上讲

    function($scope){
    
    }
    
    function(scope){
    
    }
    

    没有任何区别。

    但是上面的scope或者$scope对象是angular内部提供的对象,我们一般通过依赖注入的方式获取这个对象,如果你通过显示依赖的方式:

    app.controller("MainCtrl",["$scope",function(scopeObject){
    
    }]);
    

    注入的变量名必须是$scope,函数里面的形参就无所谓了。

    如果是隐式注入,

    app.controller("MainCtrl",function($scope){
    
    });
    

    函数形参必须是$scope

    回复
    0
  • 大家讲道理

    大家讲道理2017-05-15 16:57:58

    接着楼上的解答,隐式注入的代码

    app.controller("MainCtrl",function($scope){
    
    });

    可以通过隐式注入的形式注入$scope,但进行js代码压缩时通常会将变量名替换成abc等简写方式,从而造成隐式注入失败。所以一般都使用显示注入的方式。此时,使用$scope还是scope就成了编码规范的一部分,没有任何区别了。

    回复
    0
  • 取消回复