5

我正在使用 ngx-translate lib 在我的 Angular 应用程序中支持 I18N。谁能帮我标记下面的 html 片段以进行翻译?

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

我只想标记 span 标签内的文本内容。我怎样才能使它成为参数化的翻译?

任何帮助将不胜感激。

提前致谢。

4

1 回答 1

8

这是您可以使用带有过滤器的参数转换的方式:

// 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>
于 2018-04-25T16:53:29.277 回答