У меня есть требование для добавления динамических вкладок на экран User Preferences
.
Основной вкладкой предпочтений может быть статическая вкладка со статическим содержимым, но вторая вкладка должна иметь вложенные элементы mat-tab
.
Эти дополнительные динамические настройки исходят из серверной части, что позволяет мне использовать *ngFor
для рендеринга дополнительных вкладок.
Проблема, с которой я сейчас сталкиваюсь, связана с вкладкой labels
. Текст метки берет свое значение из первой вложенной вкладки, а НЕ из свойства label
, которое я устанавливаю.
Пожалуйста, посмотрите мой пример здесь на stackblitz - https://stackblitz.com/edit/mat-tabs-nested?embed=1&file=app/tab-group-async-example.html
Фрагмент кода из онлайн-проекта:
<mat-tab-group>
...
<mat-tab label="More Dynamic Preferences">
<!-- NESTED HERE -->
<mat-tab-group>
<mat-tab *ngFor="let tab of asyncTabs | async">
<ng-template mat-tab-label>{{tab.label}}</ng-template>
{{tab.content}}
</mat-tab>
</mat-tab-group>
</mat-tab>
</mat-tab-group>
Если щелкнуть вкладку «Дополнительные динамические настройки», текст заголовка вкладки становится «Первый». То же самое происходит на второй вкладке, содержимое вкладки которой я загружаю синхронно, в отличие от асинхронного примера.