javascript - 如何正确使用 `$inject `参数?

标签 javascript angularjs dependency-injection

当我不向 $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/

相关文章:

javascript - jQuery : jqPlot function call won't work properly

angularjs - 如何根据 bootstrap 网格系统使用 angularjs 指令设置 height = width 以获得方形 div?

c# - 静态方法中的 ASP.NET MVC 访问配置

javascript - 为什么 'new Date() * 1' 会产生 Javascript 时间戳?

javascript - 在javascript中删除一行文本

javascript - 在 keyup 上向 API 发出请求,但我无法访问范围内的内容

javascript - 咕噜声 : Location URL app with period

dependency-injection - 为什么 Simple Injector 没有像 Unity 这样的 IContainer 抽象?

c# - 注入(inject)存储库上的 IDisposable

javascript - 如何更改链接上的域但保留路径?