当我不向 $inject
方法插入任何参数时,它完美地工作:
(function()
{
var FooController=function($scope){
alert('a1');
debugger;
};
FooController.$inject=['$scope'];//it perfectly works
angular.module('someApp',[]).controller('FooController', FooController);
}());
但是,如果我向 $inject
方法添加一些参数,则它不起作用:
(function()
{
var FooController=function($scope, foo, bar) {
alert('a1');
debugger;
};
var foo={type:"Fiat", model:"500", color:"white"};
var bar={type:"Fiat", model:"500", color:"white"};
FooController.$inject=['$scope', 'foo', 'bar'];//it doesn't work
angular.module('someApp',[]).controller('FooController', FooController);
}());
我尝试添加alert('a1')
,但它没有运行。因此,在我看来,我不恰本地声明了以下行:
FooController.$inject=['$scope', 'foo', 'bar'];//it doesn't work
你能澄清一下我做错了什么吗?
最佳答案
创建专用的值(value)
服务怎么样?
(function()
{
var FooController=function($scope, foo, bar) {
alert('a1');
debugger;
};
var foo={type:"Fiat", model:"500", color:"white"};
var bar={type:"Fiat", model:"500", color:"white"};
FooController.$inject=['$scope', 'foo', 'bar'];
angular.module('someApp',[])
.controller('FooController', FooController)
.value('foo', foo)
.value('bar', bar)
}());
关于javascript - 如何正确使用 `$inject `参数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39054191/