您好我正在尝试在下面的模块中使用$ window对象。
var testInterceptor = function($provide,$httpProvider,$window){
// actual Code
}
angular.module('MyApp')
.config(testInterceptor);
但该页面正在抛出如下错误
未捕获错误:[$ injector:modulerr]由于以下原因导致无法实例化模块MyApp: 错误:[$ injector:unpr]未知提供商:$ window
请帮我解决此问题。
答案 0 :(得分:6)
$window
是一项服务,无法在配置阶段中使用。
此处只能使用提供商和常量。
阅读文档。 https://docs.angularjs.org/guide/module
配置块 - 在提供商注册和配置阶段执行。只有提供程序和常量才能注入配置块。这是为了防止服务在完全配置之前意外实例化。
您可以做的是在运行阶段放置必要的代码。因为你可以在这里使用服务。
答案 1 :(得分:0)
试试这个。 (http://codepen.io/anon/pen/jWRmqZ)
var testInterceptor = function($provide,$httpProvider,$window){
// More Code
}
angular.module('MyApp', [])
.config(['$provide','$httpProvider','$window', testInterceptor]);