我正在使用(selectedChange)="functionName($event)"
来获取我的活动标签的索引。但是,在页面加载时,我无法触发此事件,因为它仅在我更改选项卡至少一次以获取MatTabChangeEvent
包含两个对象tab
和index
.
在两个选项卡中,我都有一个带分页的垫表。还有一个搜索栏,可以从数据库中搜索数据并将其显示在各自的选项卡中,但对我来说,问题是如果在页面加载时用户直接进入搜索栏,那么我将不知道哪个选项卡当前处于活动状态,所以我的条件语句是根据用户搜索在各自的选项卡中显示数据将给出不存在Uncaught error
的值。this.activeTab.index
但是一旦用户实际更改了选项卡,那么我就有了活动选项卡索引值,并且我的代码可以正常工作。
那么我怎样才能在页面加载时获得 MatTabChangeObject 呢?
注意:我不能使用MatGroup
withViewChild
因为它不会MatTabChangeEvent
像对象一样返回我
这是我的代码
if(this.tabEvent.index === 0) {
$event.map((a: string) => {
this._printService.getParcelById(this.vId, a, true).subscribe(res => {
data.push(res);
this.child.dataLength = $event.length;
}, err => {
data = [];
this._sb.open({
message : 'Either the parcel id does not exist in the system or it is incorrect',
type: 'error'
})
});
});
this.dataSource$ = of(data);
}
else if(this.tabEvent.index === 1) {
$event.map((a: string) => {
this._printService.getParcelById(this.vId, a, false).subscribe(res => {
data.push(res);
this.child.dataLength = $event.length;
}, err => {
data = [];
this._sb.open({
message : 'Either the parcel id does not exist in the system or it is incorrect',
type: 'error'
})
});
});
this.dataSource$ = of(data);
}
我在函数中发出 eventChange 值,然后将该值分配给this.tabEvent
类型为MatTabChangeEvent