Angular JS:用大量文本翻译静态html页面

Tho*_*mas 3 javascript localization angularjs angular-translate

我目前正在本地化我的Angular网站,而angular-translate似乎是较小字符串的一个很好的选择.但是我有几个页面有很多静态html内容,如ToS或about页面,我真的不想塞进JSON文件(混合使用html标签等).

那么有没有办法使用angular-translate(甚至没有那个模块)来保存部分视图中的内容(比如/partials/tos-en.html)并根据语言进行交换?

Dav*_*ich 5

您想要一种获取用户语言代码的方法.有了这个,你打算用语言代码作为名称的一部分呈现部分.

Angular translate模块有两种感兴趣的服务方法:

$translate.use()返回用户的活动语言.不幸的是,如果在语言加载到页面之前调用服务方法,则可能会为null.

$translate.proposedLanguage()返回"预期语言" - 意味着您将调用的值$translate.use(),但即使语言未加载,此调用也会成功.拥有此语言代码列表,您可以使用它们为您打算支持的语言创建部分代码.

就像是

<div ng-include="about-{{ $translate.proposedLanguage() }}.html">
</div>
Run Code Online (Sandbox Code Playgroud)