要注入依赖项,我们执行以下操作:
inject(["$scope", "$compile", function ($scope, $compile) {
...
}]);
这种语法很奇怪!将函数放在数组中似乎对我来说非常直观。有没有一个很好的理由为什么选择这样的?为什么不
inject(["$scope", "$compile"], function ($scope, $compile) {
我首选的语法是:
inject("$scope", "$compile", function ($scope, $compile) {
但我知道那里会有一些performance issues。 (已删除,因为它似乎让问题混乱。) < / p>
答案 0 :(得分:2)
有时,您需要将控制器函数分配给变量,例如ngRoute
(早期是核心Angular的一部分),而不是使用.controller
注册它:
$routeProvider
.when('/Book/:bookId', {
templateUrl: 'book.html',
controller: function($scope){
}
});
它也有助于为注释重用相同的变量。
$routeProvider
.when('/Book/:bookId', {
templateUrl: 'book.html',
controller: ["$scope", function($scope){
}]
});
是的,这有点违反直觉,但并非完全没有理由。
答案 1 :(得分:-1)
不仅表现:)这是因为缩小了事物。你可以读到: Angular Inject minify