Мы используем Angular6 и i18n для интернационализации в нашем приложении.Мы поджариваем сообщения об успехах или сбоях, и цель состоит в том, чтобы перевести сообщения за тосты.У нас есть общий toastComponent для отображения всех тостовых сообщений.Пока что мы внедряем тостовые сообщения через Сервис, а тостный компонент будет проходить через сервисные сообщения и отображать содержимое.Таким образом, потоком может быть любой компонент, который может передать сообщение через службу, а компонент toast отобразит содержимое и передаст сообщение, как показано ниже.
my-component.component.ts
this.messageService.toast.success('Data saved successfully')
toast.component.ts
<div *ngFor="let m of messageService.toasts; let i = index">
<div>{{ m.content }}</div>
</div>
Проблема в том, что мы не должны касаться общего компонента тоста,Одним из возможных и простых решений может быть то, что мы можем определить тег div со скрытым атрибутом как true (всегда), и мы можем получить содержимое в (my-component) и сопоставить его с любой переменной, используя ViewChild.Этот подход может быть подделан, так как скрытый контент может быть открыт путем изменения атрибута div css.Есть ли другой способ добиться этого?