首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >角度翻译-多语言-静态文件-种族条件?

角度翻译-多语言-静态文件-种族条件?
EN

Stack Overflow用户
提问于 2016-08-11 18:36:50
回答 1查看 294关注 0票数 0

我目前使用的角度转换与静态文件加载程序。不过,我目前正在实现至少3种语言,但我注意到,通常情况下,当它试图加载语言文件时,加载语言文件的时间比视图本身要长--这会导致部分翻译的UI。屏幕上的大多数项目将保持未翻译,但某些项目将是。

我尝试了以下几种方法,没有任何改变:

  • 在配置forceAsyncRefresh时设置$translateProvider (True)。
  • 在登录控制器中设置一个$rootScope监视(第一个视图用户将看到),并在translateLoadedSuccess上调用$translate.refresh()。
  • 升级到最新的角度转换

目前,99.9%的翻译正在视图中进行,例如:{:“我的翻译键”\x{翻译}}

我在试图解决这个问题时遗漏了什么?我是否应该尝试手动加载这些语言文件,并在早期加载时设置它们?如果是,如何在配置中设置它们的使用?

我使用的是角1.5.0和角平移2.11.1。

蒂娅!

EN

回答 1

Stack Overflow用户

发布于 2016-08-29 13:42:21

因此,这实际上是一种竞争条件,在这种情况下,最初加载语言文件所需的时间有时(并不总是)比角度转换为静态文件加载语言文件所需的时间长。

据我所知,有两个(2)选项可用--要么手动加载和设置语言文件,要么将语言文件移动到单独的较小文件中。但是,我希望始终保证这不会成为一个问题,所以我选择手动加载和设置语言文件。这实际上相当简单,需要以下几点:

1)语言文件将加载在index.html文件中项的顶部。

2)语言文件本身将被分配一个变量- ie var enUS ={ 'LOGIN':'Login','USER':'User‘}

3)该语言将在app.config中手动设置:

代码语言:javascript
复制
app.config(['$translateProvider', function($translateProvider){
    $translateProvider.translations('en_US', enUS); // this is the variable we assigned to the language json in step 2
    $translateProvider.preferredLanguage('en_US');
    $translateProvider.useSanitizeValueStrategy('sanitize');
}]);

完全解决了所有客户的所有问题。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38903839

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档