在en.json中有角ngx-translate嵌套翻译?

时间:2019-02-08 18:20:12

标签: angular ngx-translate

我想在html模板中翻译一条语句。已翻译语句本身包含一个翻译管道。这似乎不起作用,是否还有其他方法?

在HTML中:

<div class="description">
        {{ state + "-page.intro-info-description" | translate }}

        <ul class="bullet">
        <li>{{ state + "-page.intro-info-1" | translate }}</li>
        <li>{{ state + "-page.intro-info-2" | translate }}</li>
        <li>{{ state + "-page.intro-info-3" | translate }}</li>
        </ul>

    {{ "intro-info-description" | translate }}

    </div>

en.json:

{
 "intro-info-description": "You can register with 
 {{ 'provider' | translate }} if you can provide the following 
 information:",

"provider:": "Provider"
}

我想在页面上说: “如果您可以提供以下信息,则可以在提供商处注册      信息:”

相反,它说:

“您可以通过      {{'提供者'|如果您可以提供以下内容,请翻译}}      信息:”

1 个答案:

答案 0 :(得分:0)

您可以为此使用translateParam。

HTML看起来像这样:

{{ state + "-page.intro-info-description" | translate: { provider: (state + "-page.provider" | translate) }}}

或作为元素

<p [translate]="state + '-page.intro-info-description'" [translateParams]="{ provider: (state + "-page.provider" | translate)}"></p>

您的json文件将如下所示:

{
 "intro-info-description": "You can register with 
 {{provider}} if you can provide the following 
 information:",

"provider:": "Provider"
}