gpt4 book ai didi

angular - ngbTabset 不以编程方式更新选项卡

转载 作者:行者123 更新时间:2023-12-02 12:10:47 27 4
gpt4 key购买 nike

我尝试通过 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 链接:https://stackblitz.com/edit/angular-reywga-fgshaj?file=app%2Ftabset-basic.html

关于angular - ngbTabset 不以编程方式更新选项卡,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53812234/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com