我正在尝试重置mat-tab-group
,以便在routeParams
更改时将第一个标签页设置为活动状态。
ts文件:
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
)。
但是第一个选项卡不会激活-即使我在路由参数的订阅中设置了索引。
答案 0 :(得分:0)
我做到了。 原因是为selectedIndex绑定了两种方式。
https://github.com/angular/material2/issues/10282
我设置了<mat-tab-group [(selectedIndex)]="index">
而不是<mat-tab-group [selectedIndex]="index">
,它起作用了。
因此,当我通过routerLink从一张卡的第二个标签转到另一张卡时,新卡的第一个标签变为活动状态。