停止选项卡更改primeNG Angular 4

时间:2018-12-18 11:00:46

标签: angular primeng

我正在使用角度为4的primeNG,我想知道如何阻止tabview中的选项卡更改。

到目前为止,我设法解决的方法是在选项卡更改后将用户返回到初始选项卡,我在tabview的onChange回调中执行此操作,使用setTimeout方法触发我回到初始选项卡的行为选项卡更改后(我将时间设置为100ms,这不是一个干净的方法)。

3 个答案:

答案 0 :(得分:0)

我无法评论Shashidhar的回答,因为我是新来的,但我同意他的看法。 您可以在所有选项卡(当前选项卡除外)上禁用它。

为每个标签命名,跟踪当前标签,然后执行[disabled] =“!currentTab”之类的操作。

答案 1 :(得分:0)

使用changeDetectorRef服务:

index = 0;
constructor(private changeDetectorRef: ChangeDetectorRef) {}

onChangeMethod(event): void {
    this.changeDetectorRef.detectChanges();
    this.index = 0; // The number of index you want
}
<p-tabView (onChange)="onChangeMethod($event)" [**(**activeIndex**)**]="index"> //set attribute with parenthesis

或者您可以使用超时来设置索引:

setTimeout(() => {
    this.index = 0;
    }, 0);

答案 2 :(得分:-1)

Use disabled property

When true, tab cannot be activated

Example :
<p-tabPanel header="Header Text" [disabled]="true"> Content 1 </p-tabPanel>