在条件运算符(三元)上使用 angular i18n

Using angular i18n on conditional operators (ternary)

是否可以在需要条件操作的字符串上使用 i18n

<h2 i18n>{{ updateMode ? 'Edit' : 'Add'}}</h2>
<h2 i18n>{{ updateMode ? 'Edit' : 'Add'}}</h2>

在您的 .xlf 文件中,您会得到类似这样的内容

<source>
  <x id="INTERPOLATION" equiv-text="{{updateMode  ? 'Edit': 'Add'}}"/>
</source>

目标应如下所示:

<target>
  {{updateMode  ? 'TranslatedValue1' : 'TranslatedValue2'}}
</target>

编辑: 这个答案不相关,因为 angular v.9.0 您不能再使用三元运算符,而是使用:

<ng-container *ngIf="updateMode" i18n="@@translationID1>TranslatedValue1</ng-container>
<ng-container *ngIf="!updateMode" i18n="@@translationID2>TranslatedValue2</ng-container>