Я использую Angular в сочетании с require.js. В дополнение к этому я использую аддон angular-translate
. Теперь я добавил плагин angular-translate-storage-local
и получил эту ошибку: Error: [$injector:unpr] Unknown provider: $translateCookieStorageProvider <- $translateCookieStorage <- $translateLocalStorage <- $translate
Angular Translate: LocalStorage plugin и requirejs error
Обычно я бы сказал, что забыл добавить зависимости, но я не сделал (я думаю)!
requirejs.config
Мои:
requirejs.config({
shim: {
angular: {
exports: 'angular'
},
ngTranslateLoader: ['ngTranslate'],
ngTranslateLocalStorage: ['ngTranslate']
},
paths: {
ngTranslate: '../../vendor/angular-translate/angular-translate',
ngTranslateLoader: '../../vendor/angular-translate-loader-static-files/angular-translate-loader-static-files',
ngTranslateLocalStorage: '../../vendor/angular-translate-storage-local/angular-translate-storage-local'
}
});
Мои module
:
define(function(require) {
require('ngTranslate');
require('ngTranslateLocalStorage');
require('ngTranslateLoader');
var angular = require('angular');
var app = angular.module('app', [
'pascalprecht.translate'
])
.config([$translateProvider', function ($translateProvider) {
$translateProvider
.useStaticFilesLoader({
prefix: '/language/',
suffix: '.json'
})
.preferredLanguage('en-DK')
.useSanitizeValueStrategy('escape')
.useLocalStorage();
}]);
});
Статический загрузчик файлов плагин хорошо работает. Где мой отказ?
Edit: Я добавил следующее в мой requirejs
конфигурации:
ngTranslateLocalStorage: ['ngTranslateCookieStorage', 'ngTranslate'],
ngTranslateCookieStorage: ['ngCookies', 'ngTranslate'],
ngCookies: ['angular'],
Теперь я получаю: Error: [$injector:unpr] Unknown provider: $cookieStoreProvider <- $cookieStore <- $translateCookieStorage <- $translateLocalStorage <- $translate
Если я понимаю requirejs Призонная шайба правильно теперь оно должно быть достаточно, чтобы require(ngTranslateLocalStorage)
, но потом я получаю сообщение что pascalprecht.translate
неизвестен. Если мне нужно все депо, хотя это уже сделано в прокладке, я получаю ошибку выше. Еще что-то не так !?
Я попробовал ваш ответ, но никакого успеха. Я обновил свой вопрос. – messy
Кажется, вы не добавляли 'ngCookies' в массив зависимостей, когда вы определяете' angular.module ('app', [...]) ' –
Он работает, если я' require() 'все. Я подумал, что для этого нужна регулировка requirejs !? – messy