Angular-translate did not try to use the fallback language if the preferred language did not load

When using an angular translator to localize my Angular application, the backup language does not try if the preferred language (via the static file loader) does not load or does not exist for any reason.

$translateProvider.useStaticFilesLoader({
    prefix: 'locale-',
    suffix: '.json'
});
$translateProvider
    .preferredLanguage('ja')
    .fallbackLanguage('en');

Available plnkr: http://plnkr.co/edit/tHrBeY0Ur0rhp0xNuWpA?p=preview

If there is an empty locale-ja.json file, then the backup is loading correctly. This, as indicated, may be a library error. Has anyone found a workaround?

+4
source share
2 answers

FallbackLanguge - , . , registerAvailableLanguageKeys:

.registerAvailableLanguageKeys(['en, da'], {
    'en_US': 'en',
    'en_UK': 'en',
    'da_DK': 'da',
    '*': 'en'
})

"en" . , .

+3

, - $translateProvider.use(). :

 $translateProvider
    .preferredLanguage('ja')
    .use('ja')
    .fallbackLanguage('en');
0

Source: https://habr.com/ru/post/1535158/


All Articles