我一直在寻找一种在初始化我的 angular-js 应用程序时获取服务的方法,但找不到如何让它工作。就我而言,我想获得 $location 服务来观察 url。
环顾四周,我发现可以从注入器中检索服务。为了得到注入器,我像这样引导我的应用程序:
var angularApp = angular.module("MyApp", []);
var angularInjector = angular.injector(["MyApp", "ng"]);
angularApp.run(initializeAngularApp);
initializeAngularApp()
{
var location = angularInjector.get("$location");
}
这会引发错误:
Unknown provider: $rootElementProvider <- $rootElement <- $location
我的理解是,一旦注入器完成初始化,就应该调用 initializeAngularApp()。但从我得到的错误来看,情况并非如此。
当我的应用程序初始化时,从注入器获取服务的最佳方式是什么?