为什么我不能从$ Injection获得$ location?

时间:2016-08-05 14:44:41

标签: angularjs

我是角色新手并尝试使用$location在范围之外使用$injector服务。

当我运行以下代码时,我不断收到错误

   angular.injector(['myApp']).get('$location');

有什么建议吗?

1 个答案:

答案 0 :(得分:1)

$location服务不属于myApp模块,它是内部ng模块的一部分。

要获得$http服务,请使用:

var $http = angular.injector(['ng']).get("$http");

$location服务取决于在引导时创建的$rootElement服务。要获得$location服务使用:

var $rootElementModule = function($provide) {
    $provide.value('$rootElement', angular.element(document))
}

var $location = angular.injector(['ng',$rootElementModule]).get("$location");