AngularJS - 初始化控制器的正确语法是什么?

时间:2016-01-12 17:29:40

标签: javascript angularjs syntax

我一直在关注AngularJS的一些教程,我注意到有多种方法可以初始化Controller。

例如,以下代码基于AngularJS文档:

angular.module('todoList', [])
.controller('todoListCtrl', ['$scope',
    function ($scope) {
        ...
    }
]);

但是,此代码也有效:

angular.module('todoList', [])
.controller('todoListCtrl',
    function ($scope) {
        ...
    }
);

一种方法优于另一种吗?

1 个答案:

答案 0 :(得分:1)

第二种语法不是缩小安全性。缩小后,uglifier将重命名$scope,这意味着AngularJS注入器无法正确注入,因为注入器使用名称匹配来识别要解析的依赖关系。

添加了第一个语法来修复此问题,这是您应该用于生产应用程序的语法。