【发布时间】:2015-11-28 12:31:17
【问题描述】:
我知道在配置块之外调用 $provide 是不可能的。将 $provide 注入在 $provide.decorator 调用它的服务有什么技巧吗?
angular.module('app', [])
.config(function($provide){
$provide.decorator('myService', function($delegate){
//inject the $provide into myService through $delegate
return $delegate;
}
})
【问题讨论】:
-
为什么您的服务需要
$provide? -
这与作为参数注入是一样的,但抽象程度较低。
-
重用由angular实现的装饰器模式。
-
@MiguelL 请注意,
$provide.decorator只有在装饰服务实例化(即第一次注入)之前注册才生效。
标签: javascript angularjs angularjs-injector