Я создаю поставщика для получения конфигурации приложения через Json-файл. Затем я использую его в своем приложении application.config для запуска маршрута из этого объекта конфигурации.Угловой провайдер, я не могу вызывать функцию провайдера
MyApp = angular.module('MyApp', ['MyAppControllers','LocalStorageModule','ui.router']);
Это код моего провайдера конфигурации:
MyApp.provider('$configuration', function() {
return {
$get : function($http,localStorageService) {
return {
getConfiguration:function() {
var config = localStorageService.get("configuration");
console.log(config);
if(config ==null || config == undefined) {
xhr = GetHttpRequest();
xhr.onreadystatechange = function() {
if (xhr.readyState == 4) {
if (xhr.status == 200 || xhr.status == 304) {
localStorageService.set("configuration",xhr.responseText);
config = xhr.responseText;
} else {
console.log('## Error loading configuration');
}
}
}
xhr.open('GET','/assets/js/My/config.json',false);
xhr.send(null);
return JSON.parse(config);
} else {
return config;
}
}
}
}
}
});
Вот код моей конфигурации маршрутов:
MyApp.config(['$stateProvider', '$urlRouterProvider','$configurationProvider',
function ($stateProvider, $urlRouterProvider,$configurationProvider) {
console.log($configurationProvider);
configuration=$configurationProvider.getConfiguration();
angular.forEach(configuration.url, function(value, key) {
$stateProvider.state(stateName,
{
url: stateUrl,
views: stateView
}
);
});
}
]);
Но хром дает мне эту ошибку:
[ $ injector: modulerr] Не удалось создать экземпляр модуля MyApp из-за: ТипError: Cann ВЗ прочитать свойство «получить» неопределенной
Был ли какой-либо из ответов ниже, на ваш вопрос? Если да, подумайте о принятии ..В противном случае, если у вас есть пояснения или комментарии, пожалуйста, спросите. –