[英]Angular translate - different asynchronous files for same language?
角度翻譯在支持多種語言異步加載方面做得很好。 但是,它不支持為同一語言加載不同的文件,區別在於區域。
$translateProvider
.determinePreferredLanguage( )
.registerAvailableLanguageKeys( [ 'en', 'de' ], {
en_us: 'us',
en_uk: 'uk',
de_de: 'de'
})
.useStaticFilesLoader( {
prefix: '/localization/i18n/',
suffix: '.json'
})
我正在嘗試使用后備和語言協商來使其工作,但是任何其他解決方案都將有所幫助。
我要避免的一種特別駭人聽聞的方法是為'uk'創建一種虛擬語言。 以下代碼有效,
$translateProvider
.determinePreferredLanguage( )
.registerAvailableLanguageKeys( [ 'en', 'uk', 'de' ], {
us: 'us',
uk: 'uk',
de: 'de'
})
.useStaticFilesLoader( {
prefix: '/localization/i18n/',
suffix: '.json'
})
這會更改應用程序中需要en_uk的其他許多地方(特定於區域的API調用)。
是否將后備語言設置為en,並且您的虛擬en_uk(實際上應該是en_gb)僅需要覆蓋特定的翻譯就不起作用?
我正在丟失某些東西,或者您遇到的是https://github.com/angular-translate/angular-translate/issues/563之類的東西
這個問題是同程determinePreferredLanguage
總是牽強瀏覽器語言EN_US,所以應用程序在結束了通話en.json。
我最終不得不在控制器中使用$translate.use( langKey )
,其中langKey
是基於所需區域的語言。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.