Я использую модуль углового перевода и пытаюсь внедрить все мои переводы, которые находятся на сервере с $ http. Я использую провайдера, и я знаю, что только я могу вводить зависимости через $ get, но я не могу вызвать эту функцию у своего провайдера. Мне нужно знать, могу ли я это сделать и как я это делаю.
Это мой провайдер.
.provider('languageServices', function(){
this.languages = {};
this.getExistLanguages = function() {
return ['en','es'];
};
this.getAllLanguages = function(){
return this.languages;
};
this.$get = function($http){
return {
getSpecificLanguage : function(lan) {
return this.languages = $http.post('fr3/i18n',lan);
}
}
};
});
это мой конфиг приложение
.config(function ($stateProvider, $urlRouterProvider, USER_ROLES, $translateProvider, languageServicesProvider) {
$stateProvider.state('dashboard', {
url: '/dashboard',
views: {
'header': {template: ''},
'content': { templateUrl: 'views/dashboard.html' }
},
data: { authorizedRoles: [USER_ROLES.admin] }
});
$translateProvider.preferredLanguage('es');
// here is where i want inject all my translations with something like:
// var languages = languageServicesProvider.getAllLanguages();
//and languages pass it to translateProvider
});
Я знаю, что этот код имеет некоторые ошибки, но я только хочу у вас есть идея, что я хочу сделать.
Благодаря
Hello! Большое спасибо за ваш ответ. Я видел второй URL-адрес, и я отмечаю, что я не могу выбрать метод или параметры .. Я ошибаюсь? –
Правильно, но было бы довольно легко войти в loader-url.js и отредактировать его прямо там. Это не большой файл, поэтому легко увидеть, что там происходит. – ribsies
большое спасибо :) –