ngx-translate:翻译html中的字符串

问题描述 投票:2回答:1

我正在使用ngx-translate库在我的角应用程序中支持I18N。任何人都可以帮我标记下面的html片段进行翻译吗?

<span *ngIf="Days < 0 && !shortSentence">
      Follow-up is <span [class.font-bold]="highlightContent">{{ InDays | positiveNumber }} days</span> past due
    </span>

我想仅标记span标记内的文本内容。如何将其作为参数化翻译?

任何帮助将不胜感激。

提前致谢。

angular ngx-translate angular-i18n
1个回答
5
投票

这是您使用过滤器进行参数化翻译的方法:

// define translation with parameter
'TRANSLATION_KEY': '{{days}} days'

// use it in template
<span>{{ 'TRANSLATION_KEY' | translate: { days: followUpInDays | positiveNumber } }}</span>

如果您想将整个句子作为翻译(包括HTML),则需要使用innerHTML属性绑定:

// define translation with parameter
'TRANSLATION_KEY': 'Follow-up is <span class="{{className}}">{{days}} days</span> past due'

// use it in template
<span *ngIf="Days < 0 && !shortSentence"
      [innerHTML]="'TRANSLATION_KEY' | translate: { className: (highlightContent ? 'font-bold' : ''), days: followUpInDays | positiveNumber }">
</span>
© www.soinside.com 2019 - 2024. All rights reserved.