在运行时从Angular注入器中检索实例

时间:2015-02-27 13:46:32

标签: javascript angularjs

当我的应用程序运行时,我想打开控制台并从进样器中获取一个对象实例。这可能吗?

类似的东西:

var service = angular.injector.get('my-service'); // This does not work

1 个答案:

答案 0 :(得分:1)

是的,有可能:

var service = angular.element(document.documentElement).injector().get('my-service');

在上面的代码段中,您应该将应用程序根DOM元素传递到angular.element。对于此示例,我使用了document.documentElement html元素。

另请注意,您无法直接使用angular.injector(),因为您需要使用用于应用程序boostraping的注入器实例。要检索此注入器实例对象,您需要调用相应injector实例的angular.element方法。