代码之家  ›  专栏  ›  技术社区  ›  Karl Johan Vallner

Angular2本地化重新加载组件HTML

  •  0
  • Karl Johan Vallner  · 技术社区  · 10 年前

    我正在开发一个Angular2应用程序,它有多种语言。根据与angular2模板请求一起发送的cookie,我从服务器获得不同的语言模板。问题是,当我在Angular中更改语言时,它不会重新加载@Component HTML-s,这意味着我没有得到翻译的页面模板。

    实例

    <p>Hello: @{{ user.name }}</p>
    

    当我在Angular中更改语言时,我必须重新加载组件HTML以获取(例如)德语翻译模板。

    <p>Guten tag: @{{ user.name }}</p>
    

    我目前正在做一个

    location.reload();
    

    换了语言后,我想不出更好的解决办法。

    1 回复  |  直到 10 年前
        1
  •  1
  •   brians69    10 年前

    Angular2计划在未来默认采用本地化。但是,现在,你为什么不使用 ng2-translate 翻译东西?

    它是 easy to set up 您可以使用管道轻松翻译术语:

    {{ 'HELLO' | translate}}

    然后,您只需在您的 i18n 包含您需要的所有翻译的文件夹(例如。 en.json , de.json

    看看这个 Plunker 一个简单的工作示例。