AngularJs - переход от ngRoute к выбрасыванию ui-маршрутизатора Ошибка: [$ injector: unpr]

0

Я изменил маршрутизацию в своем приложении с ngRoute на ui-router, я получаю две ошибки:

  1. SyntaxError: Неожиданная строка
  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-router правильно указан в файле app.js, файл angular-ui-router.min.js успешно загружается при загрузке index.html. Что я делаю не так? Пожалуйста помоги !

Теги:
angular-ui-router
ngroute

1 ответ

1
Лучший ответ
function routeConfigurator('$stateProvider', '$urlRouterProvider', routes)

должно быть

function routeConfigurator($stateProvider, $urlRouterProvider, routes)

Вот почему вы получаете Unexpected string ошибку.

Вторая ошибка является следствием первого.

  • 0
    Теперь его бросок: Ошибка: [$ injector: unpr] errors.angularjs.org/1.4.7/$injector/… data-ng-include = "'/ app / common / layouts / left-nav.html'" class = "ng-scope" data-ng-animate = "1"> idebar
  • 0
    Это уже другая ошибка. Кажется, вы забыли провайдера из ngRoute , $routeProvider в компоненте.
Показать ещё 5 комментариев

Ещё вопросы

Сообщество Overcoder
Наверх
Меню