为什么在 AngularJs 中创建组件时使用方括号表示法

2024-03-30

当我们创建控制器、服务等组件时,AngularJs 中的方括号有什么用?我在示例中看到了 ['ngRoute', 'ngFileUpload'] 。它有什么用呢?


它是角度依赖注入的定义方式,因此您可以在不破坏源代码的情况下丑化它。

例如,控制器可以定义两个依赖项,如下所示:

angular.module('App').controller('SomeController', ['ngRoute', 'ngFileUpload', function (route, fileUpload) {
    console.log('this is ngRoute', route);
    console.log('this is fileUpload', fileUpload);
}]);

Angular 将实例化控制器,其依赖项与数组中的顺序相同。所以你给参数起的名字并不重要。现在想象一下您想要丑化代码以使其如下所示:

angular.module('App').controller('SomeController', ['ngRoute', 'ngFileUpload', function (a, b) {
    console.log('this is ngRoute', a);
    console.log('this is fileUpload', b);
}]);

您仍然会像您应该的那样获得依赖项。 但是,如果您使用此表示法:

angular.module('App').controller('SomeController', function (ngRoute, ngFileUpload) {});

您无法通过重命名函数参数来丑化代码。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

为什么在 AngularJs 中创建组件时使用方括号表示法 的相关文章

随机推荐