Если вы хотите условно запретить пользователю переходить на определенную вкладку, вы можете просто отключить вкладку на основе этого условия. Позволить пользователю щелкнуть по вкладке, а затем каким-то образом попытаться предотвратить ее, мне не кажется хорошим решением.
Допустим, вы хотите отключить вкладку с индексом 1:
<mat-tab-group (focusChange)="show()" [selectedIndex]="selected.value"
(selectedIndexChange)="selected.setValue($event)">
<mat-tab *ngFor="let tab of tabs; let index = index" [label]="tab" [disabled]="index === 1">
Contents for {{tab}} tab
</mat-tab>
</mat-tab-group>
В идеале вы должны определить интерфейс для ваших вкладок, добавить свойство (например, disabled
) и на основе этого свойства установить состояние disabled
вкладки. Это позволяет вам легко включать / отключать вкладку.