加载Angular $窗口的问题

时间:2016-02-17 10:49:23

标签: angularjs

您好我正在尝试在下面的模块中使用$ window对象。

var testInterceptor = function($provide,$httpProvider,$window){
    // actual Code
}

angular.module('MyApp')
    .config(testInterceptor);

但该页面正在抛出如下错误

未捕获错误:[$ injector:modulerr]由于以下原因导致无法实例化模块MyApp: 错误:[$ injector:unpr]未知提供商:$ window

请帮我解决此问题。

2 个答案:

答案 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]);