Как изменить mat-tab после изменения routeParams? - PullRequest
0 голосов
/ 16 апреля 2019

Я пытаюсь сбросить mat-tab-group, чтобы установить первую вкладку как активную при изменении routeParams.

ts file :

public index = 0;

ngOnInit() {
  this.subscription = this.route.params.subscribe((routeParams: Params) => {
    // some code

    this.index = 0;
  });
}

html файл

<mat-tab-group [selectedIndex]="index">
  <mat-tab></mat-tab>
  <mat-tab>
    <a [routerLink]="['/url/2']"></a>
  </mat-tab>

Во второй вкладке у меня есть ссылка маршрутизатора на другую карту - поэтому, когда маршрутизатор переходит на этот компонент карты, не перезагружается (маршрут /url/:id).Но первая вкладка не становится активной, даже если я задаю индекс внутри подписки для параметров маршрута.

1 Ответ

0 голосов
/ 17 апреля 2019

Я сделал это.Причина была в двухстороннем связывании для selectedIndex.

https://github.com/angular/material2/issues/10282

Я установил <mat-tab-group [(selectedIndex)]="index"> вместо <mat-tab-group [selectedIndex]="index">, и это работает.

Итак, когда я идуПо маршрутизатору перейдите со второй вкладки одной карты к другой карте, после чего активируется первая вкладка новой карты.

...