2016-08-05 45 views
0

我是新来的角度,并试图使用$injector范围之外的$location服务。

当我运行下面的代码,我不断收到一个错误

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

有什么建议?

+0

请在问题中包含错误。 –

+0

“在范围之外使用'$ location'”是什么意思?你指的是什么范围? '$ scope'服务和'$ location'服务彼此之间没有任何依赖关系,但通常'$ scope'是人们说范围时的含义。没有代码或错误消息,你试图做什么并不明显,更不用说为什么你有麻烦。 – Claies

回答

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"); 
相关问题