ngbTabset 未以编程方式更新选项卡
ngbTabset not updating tab programmatically
我正在尝试通过 ngbTabset.select() 以编程方式激活选项卡(不是默认激活),但它不起作用。
<ngb-tabset #ctdTabset="ngbTabset">
<ngb-tab id="tab1">
<ng-template ngbTabTitle>
<div (click)="loadView('tab1')">
<span>Tab 1</span>
</div>
</ng-template>
<ng-template ngbTabContent>
// tab 1 content here
</ng-template>
</ngb-tab>
<ngb-tab id="tab2">
<ng-template ngbTabTitle>
<div (click)="loadView('tab2')">
<span>Tab 2</span>
</div>
</ng-template>
<ng-template ngbTabContent>
// tab 2 content here
</ng-template>
</ngb-tab>
</ngb-tabset>
// component.ts
export class DashboardComponent implements OnInit {
@ViewChild('ctdTabset') ctdTabset;
ngOnInit() {
this.switchNgBTab('tab2');
}
switchNgBTab(id: string) {
this.ctdTabset.select(id);
}
}
它没有更新 tab2,可能是我做错了什么。拜托,任何人都可以帮助我。您的好意将不胜感激。谢谢。
使用 ngAfterViewInit。从 ngAfterViewInit 调用 switchNgBTab()
而不是 ngOnInit()
import {Component, ViewChild} from '@angular/core';
@Component({
selector: 'ngbd-tabset-basic',
templateUrl: './tabset-basic.html'
})
export class NgbdTabsetBasic {
@ViewChild('ctdTabset') ctdTabset;
ngOnInit() {}
ngAfterViewInit() {
this.switchNgBTab('tab2');
}
switchNgBTab(id: string) {
this.ctdTabset.select(id);
}
}
stackBlitz link : https://stackblitz.com/edit/angular-reywga-fgshaj?file=app%2Ftabset-basic.html
我正在尝试通过 ngbTabset.select() 以编程方式激活选项卡(不是默认激活),但它不起作用。
<ngb-tabset #ctdTabset="ngbTabset">
<ngb-tab id="tab1">
<ng-template ngbTabTitle>
<div (click)="loadView('tab1')">
<span>Tab 1</span>
</div>
</ng-template>
<ng-template ngbTabContent>
// tab 1 content here
</ng-template>
</ngb-tab>
<ngb-tab id="tab2">
<ng-template ngbTabTitle>
<div (click)="loadView('tab2')">
<span>Tab 2</span>
</div>
</ng-template>
<ng-template ngbTabContent>
// tab 2 content here
</ng-template>
</ngb-tab>
</ngb-tabset>
// component.ts
export class DashboardComponent implements OnInit {
@ViewChild('ctdTabset') ctdTabset;
ngOnInit() {
this.switchNgBTab('tab2');
}
switchNgBTab(id: string) {
this.ctdTabset.select(id);
}
}
它没有更新 tab2,可能是我做错了什么。拜托,任何人都可以帮助我。您的好意将不胜感激。谢谢。
使用 ngAfterViewInit。从 ngAfterViewInit 调用 switchNgBTab()
而不是 ngOnInit()
import {Component, ViewChild} from '@angular/core';
@Component({
selector: 'ngbd-tabset-basic',
templateUrl: './tabset-basic.html'
})
export class NgbdTabsetBasic {
@ViewChild('ctdTabset') ctdTabset;
ngOnInit() {}
ngAfterViewInit() {
this.switchNgBTab('tab2');
}
switchNgBTab(id: string) {
this.ctdTabset.select(id);
}
}
stackBlitz link : https://stackblitz.com/edit/angular-reywga-fgshaj?file=app%2Ftabset-basic.html