Angular i18n select: переводить некоторые значения, использовать другие как есть - PullRequest
0 голосов
/ 08 марта 2019

Я использую i18n в проекте Angular 7, например:

 <a *ngIf="!last" [routerLink]="[item.url]" i18n="Breadcrumbs@@breadcrumb-label"> {item.label, select, projects {Projekte} new {Neu}}</a>

Пока все работает отлично. На хлебных крошках нижнего уровня отображается атрибут имени, который не будет переведен. Как мне перевести item.label, например, когда это проект или новый и оставить как есть, если нет?

Я пытался

 {item.label, select, projects {Projekte} new {Neu} other {item.label}}

и

 {item.label, select, projects {Projekte} new {Neu} other item.label}

но, очевидно, ни один из них не сработал.

1 Ответ

0 голосов
/ 11 марта 2019

Я решил это с помощью отдельных шаблонов:

<ng-container *ngTemplateOutlet="isFixedLabel(item.label) ? fixed : other; context: { item: item }"></ng-container>

<ng-template #fixed i18n="Breadcrumbs@@breadcrumb-label" let-item="item"> {item.label, select, projects {Projekte} new {Neu}}</ng-template>
<ng-template #other let-item="item">{{ item.label }}</ng-template>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...