AngularJs - changing from ngRoute to ui-router throwing Error: [$injector:unpr]

AngularJs - changing from ngRoute to ui-router throwing Error: [$injector:unpr]

我将应用程序中的路由从 ngRoute 更改为 ui-router,我收到两个错误:

  1. 语法错误:意外的字符串
  2. 未捕获的错误:[$injector:unpr]

config.route.js:

(function () {
  var app = angular.module('app');

  //Collect the routes
  app.constant('routes', getRoutes());    

  app.config(['$stateProvider', '$urlRouterProvider', 'routes', routeConfigurator]);
  function routeConfigurator('$stateProvider', '$urlRouterProvider', routes) {
    routes.forEach(function (r) {
      $stateProvider.state(r.url, r.config);
    });
    $urlRouterProvider.otherwise('/');
  }

  //Define the routes
  function getRoutes() {
    return [
      {
        url: '/',
        config: {
          templateUrl: 'app/components/dashboard/test/dashboard.html',
          title: 'dashboard',
          settings: {
            nav: 1,
            content: '<i class="fa fa-dashboard"></i> Dashboard'
          }
        }
      }, {
        url: '/admin',
        config: {
          title: 'admin',
          templateUrl: 'app/components/admin/admin.html',
          settings: {
            nav: 2,
            content: '<i class="fa fa-lock"></i> Admin'
          }
        }
      }
    ];
  }
})();

以前是这样的,工作正常:

app.config(['$routeProvider', 'routes', routeConfigurator]);
  function routeConfigurator($routeProvider, routes) {
    routes.forEach(function (r) {
      $routeProvider.when(r.url, r.config);
    });
    $routeProvider.otherwise({ redirectTo: '/' });
  }

ui-路由器模块在 app.js 中被正确引用,angular-ui-router.min.js 文件在 [=29= 上成功加载] 加载中。我究竟做错了什么 ?请帮忙!

function routeConfigurator('$stateProvider', '$urlRouterProvider', routes)

应该是

function routeConfigurator($stateProvider, $urlRouterProvider, routes)

这就是您收到 Unexpected string 错误的原因。

第二个错误是第一个错误的结果。