AngularJS - 错误:[$ injector:unpr]未知提供者:

时间:2016-03-24 09:45:47

标签: angularjs ionic-framework

我想重写我现有的代码,但是当我遇到这个错误时我失败了:

ionic.bundle.js:8900 Uncaught Error: [$injector:modulerr] Failed to instantiate module app due to:
Error: [$injector:modulerr] Failed to instantiate module app.routes due to:
Error: [$injector:unpr] Unknown provider: 

我的工作片段:

angular.module('app.routes', [])
   .config(function() {});

我的重写代码段(此代码失败):

(function () {

  // use strict mode to write clean code!
  'use strict';

  // This configures the routes
  var RouteProvider = function () {

  };

  // init the config
  angular.module('app.routes', [])
    .config(['', RouteProvider]);

}());

我为此创建了一个Plunker:Plunker

感谢您的帮助;)

1 个答案:

答案 0 :(得分:4)

你的.config调用中有一个空字符串 - 这实际上告诉Angular你想要在配置函数中注入一个空字符串作为名称的服务。这不存在,所以你得到一个未知的提供程序错误 - 一个非常不清楚的错误,因为它试图向您显示服务的名称,但它是空白的,所以你最后只有Error: [$injector:unpr] Unknown provider:而没有别的!

您的.config来电应该看起来更像这样:

// init the config
  angular.module('app.routes', [])
    .config(RouteProvider);

如果您实际上没有在函数中注入任何内容,则不需要数组语法。