angularjs – angular-translate – 用于determinPreferredLanguage()的后备语言

前端之家收集整理的这篇文章主要介绍了angularjs – angular-translate – 用于determinPreferredLanguage()的后备语言前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我的应用程序中使用了 angular-translate.如果resolvePreferredLanguage()返回一个我的代码不知道的语言密钥,我如何注册一个后备语言?

我想要回到英语,如果有人从例如瑞典访问我的网站(语言密钥:sv).但是由于我没有在我的registerAvailableLanguageKeys函数中列出sv,所以它失败,并且语言密钥被显示用户而不是翻译.

$translateProvider
    .registerAvailableLanguageKeys(['da-dk','en-us'],{
        'en_US': 'en-us','en_UK': 'en-us','da': 'da-dk',})
    .determinePreferredLanguage();
使用通配符是最好的解决方案,你可以设置en_ *如下:
$translateProvider.useStaticFilesLoader({
       prefix: 'locales/locale-',suffix: '.json'
    })   

    .registerAvailableLanguageKeys(['en','fr','pt'],{
       'en_*': 'en','fr_*': 'fr','pt_*': 'pt','*': 'en'
    })

    .determinePreferredLanguage()

    .fallbackLanguage('en');

对于文件

locales/locale-en.json
locales/locale-fr.json
locales/locale-pt.json

猜你在找的Angularjs相关文章