javascript - Angular $injector 与 Angular 依赖注入(inject)

标签 javascript angularjs

我是 Angular 的新手。我看到有一个叫做 $injector 的东西,它的功能是 get,我可以用它来获得特定的服务。例如:

app.factory('$myService', function($injector) {
   return { ...
            var http = $injector.get('$http');
            ....
   }
}

我将Angular的$http服务获取到变量http

在其他例子中我看到类似的东西

app.factory('$myService', function($http) {
    return {...}

这也将 $http 服务注入(inject)工厂。

两者有区别吗?我应该什么时候使用这个或那个?

谢谢!

最佳答案

是不是一样,用你喜欢的那个。

在我看来,直接注入(inject)您的依赖项(这里是 $http)更利于可读性。


请注意,您还可以使用 $inject注释:

someModule.controller('MyController', MyController);
MyController.$inject = ['$http'];

var MyController = function($http) {
    // ...
}

关于javascript - Angular $injector 与 Angular 依赖注入(inject),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41724163/

相关文章:

javascript - 链接元素变量以便在 Protractor 中更好地定位

javascript - 如何在 Safari 中录制 HTML5 视频?

在 Iframe 中加载 SVG 的 Javascript 事件

angularjs - Angular 模块中的多个配置 block

javascript - 使用 Karma 和 Jasmine 在 Angularjs 中以表单作为参数测试函数

javascript - Mozilla 浏览器的 Pdfmake.js 问题(最新版本)

javascript - 如何在 Rx.Observable 上链接订阅? (重构)

javascript - Underscore/jQuery 模板注释问题

javascript - 为什么 Angular 摘要循环在 UI 事件、$timeout 和 $http 上不同?

angularjs - 使用自定义指令、ng-show 和 $scope 在 Angularjs 中隐藏/显示元素