Проблемы с инжектором AngularJS

0

У меня есть ошибка [$injector:unpr] в моем приложении AngularJS.

Я посмотрел на ссылку, которую эта ошибка дает мне, чтобы исправить эту проблему, к сожалению, она ничего не изменила. Поэтому я надеялся, что вы, ребята, сможете увидеть, что я сделал неправильно.

Сначала ошибка с моей консоли браузера

Error: [$injector:unpr] http://errors.angularjs.org/1.4.7/$injector/unpr?p0=configProvider%20%3C-%20config%20%3C-%20navController
    at Error (native)
    at http://localhost:8080/simplanner/lib/Angular-1.4.7/angular.min.js:6:416
    at http://localhost:8080/simplanner/lib/Angular-1.4.7/angular.min.js:40:409
    at Object.d [as get] (http://localhost:8080/simplanner/lib/Angular-1.4.7/angular.min.js:38:394)
    at http://localhost:8080/simplanner/lib/Angular-1.4.7/angular.min.js:40:483
    at d (http://localhost:8080/simplanner/lib/Angular-1.4.7/angular.min.js:38:394)
    at Object.e [as invoke] (http://localhost:8080/simplanner/lib/Angular-1.4.7/angular.min.js:39:161)
    at P.instance (http://localhost:8080/simplanner/lib/Angular-1.4.7/angular.min.js:80:207)
    at K (http://localhost:8080/simplanner/lib/Angular-1.4.7/angular.min.js:61:190)
    at g (http://localhost:8080/simplanner/lib/Angular-1.4.7/angular.min.js:54:410)

    (anonymous function) @ angular.min.js:107
    (anonymous function) @ angular.min.js:80
    n.$apply @ angular.min.js:133
    (anonymous function) @ angular.min.js:20
    e @ angular.min.js:39d @ angular.min.js:19
    zc @ angular.min.js:20Zd @ angular.min.js:19
    (anonymous function) @ angular.min.js:293
    a @ angular.min.js:174Hf.c @ angular.min.js:35


Тогда, конечно, мой угловой код

var config = {
    ...
};

var app = angular.module('SimPlannerApp', [
        'ui.router',
        'ui.bootstrap'
      ]);

app.filter('capitalize', function () {
    ...
})
.filter('datetime', function ($filter) {
    ...
});

app.config(function ($stateProvider, $urlRouterProvider, $locationProvider) {
    var urlBase = '/' + config.IISProjectName + '/';

    $stateProvider
        .state('login', {
            url: "/login",
            templateUrl: urlBase + 'views/login.html',
            controller: 'loginController'
        })
        .state('view', {
            url: '/view/:view',
            templateUrl: urlBase + 'views/view.html',
            controller: 'viewController',
            resolve: {
                view: function ($stateParams) {

                    ...

                }
            }
        })
        .state('404', {
            url: '{path:.*}',
            templateUrl: urlBase + '/views/404.html',
            controller: 'errorController'
        });
});

app.factory('sharedProperties', function () {

    ...

});

app.factory('socketService', function () {

    ...

});

app.controller('errorController', ['$scope', function ($scope) {
    ...
}]);

app.controller('loginController', ['$scope', '$location', 'socketService', 'sharedProperties', function ($scope, $location, socketService, sharedProperties) {
    ...
}]);

app.controller('navController', ['$scope', 'config', 'sharedProperties', function ($scope, config, sharedProperties) {
    ...
}]);

app.controller('viewController', ['$scope', '$state', '$interval', 'view', 'socketService', function ($scope, $state, $interval, view, socketService) {
    ...
}]);
Теги:

1 ответ

1
Лучший ответ

Похоже, что у вас нет провайдера, называемого config, чтобы вводить его в контроллер,

app.controller('navController', ['$scope', 'config', 'sharedProperties', function ($scope, config, sharedProperties) {

удалите config будет введена, и она будет работать. в виде,

app.controller('navController', ['$scope', 'sharedProperties', function ($scope, sharedProperties) {

или вам нужно определить поставщика под названием config.

Если вы ожидаете, что var config собирается впрыснуть в контроллер, на самом деле он не собирается вводить. Вам нужно что-то типа поставщика, чтобы вводить как service, factory, value...

  • 0
    Спасибо ^^ Удивительно, что может сделать пара свежих глаз. Я выберу это как решение через 8 минут
  • 0
    аааааааааааа, я рад помочь тебе :) cheerz

Ещё вопросы

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