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

Я хочу использовать ng-annotate и следующий синтаксис в моем приложении (используя ng-strict-di), чтобы избежать проблем минимизации, но я продолжаю получать эту ошибку в консоли, как будто я пропускаю /** ng@Inject */ comment над функцией routeConfig.

Что мне не хватает?

Это ошибка:

**Uncaught Error: [$injector:modulerr] Failed to instantiate module something due to:
Error: [$injector:strictdi] routeConfig is not using explicit annotation and cannot be invoked in strict mode**

И это файл конфигурации маршрута.

(function () {
    'use strict';

    angular
        .module('something')
        .config(routeConfig);

    /** @ngInject */
    function routeConfig($stateProvider, $urlRouterProvider, $locationProvider) {
        $stateProvider
            .state('home', {
                url: '/',
                controller: 'MainController'
            })
            .state('properties', {
                url: '/properties',
                templateUrl: 'app/components/properties/properties.html',
                controller: 'PropertiesController',
                controllerAs: 'properties'
            })
            .state('properties.map', {
                templateUrl: 'app/components/properties-map/properties-map.html'
            })
            .state('properties.grid', {
                templateUrl: 'app/components/properties-grid/properties-grid.html'
            })
            .state('property', {
                url: '/property/:id',
                templateUrl: 'app/components/property/property.html',
                controller: 'PropertyController',
                controllerAs: 'property'
            });

        $urlRouterProvider.otherwise('/');

        $locationProvider.html5Mode(true);
    }

})();

Большое спасибо за вашу помощь.

0 ответов

Другие вопросы по тегам