Angular translate在支持多種語言異步加載方面做得不錯。但它不支持爲同一種語言加載不同的文件,區別在於區域。Angular translate - 同一種語言的不同異步文件?
$translateProvider
.determinePreferredLanguage()
.registerAvailableLanguageKeys([ 'en', 'de' ], {
en_us: 'us',
en_uk: 'uk',
de_de: 'de'
})
.useStaticFilesLoader({
prefix: '/localization/i18n/',
suffix: '.json'
})
我試圖讓這個使用回退和語言的談判工作,但沒有其他解決辦法將是有益的。
我想要避免的一個特別不好的方法是創建一個虛擬語言來'英國'。下面的代碼有效,
$translateProvider
.determinePreferredLanguage()
.registerAvailableLanguageKeys([ 'en', 'uk', 'de' ], {
us: 'us',
uk: 'uk',
de: 'de'
})
.useStaticFilesLoader({
prefix: '/localization/i18n/',
suffix: '.json'
})
這改變了很多其他需要en_uk的區域(區域特定的API調用)。