我使用了一个带有2个tabPanels
的tabview,每个datatable
包含一个数据表。
考虑一下,选项卡1的数据表有100行,而一个页面仅显示10行,而选项卡2的数据表只有3行数据并且没有分页(数据是延迟加载的)。
现在,如果我在Tab1中单击datatable
的第3页,则会根据需要加载数据。但是,如果我现在自动单击选项卡2,即使[cache]="false"
应该刷新,event.first也会在第3页设置。
我正在网格和tabPanel中使用延迟加载。我还在tabPanel
中设置了<p-tabView>
<p-tabPanel header="Work Queue" [cache]="false">
<ng-template pTemplate="content">
<p>
<p-dataTable selectionMode="single" (onRowSelect)="onRowSelect($event)" [(selection)]="selecteditemWQ" [value]="searchDocResults"
[rows]="10" [paginator]="true" [(first)]="first"
[lazy]="true" (onLazyLoad)="loadData($event)" [totalRecords]="totalRecordsCount"
scrollHeight="5px" [loading]="loading" emptyMessage="No Records Found." rowHover="true">
<p-column field="DocumentName" header="Document Name" styleClass="wordbreak"
[style]="{'width':'200px','overflow':'visible'}"
[sortable]="true" [filter]="true" filterMatchMode="contains">
</p-column>
</p-dataTable>
</p>
</ng-template>
</p-tabPanel>
<p-tabPanel header="My Documents" [cache]="false">
<ng-template pTemplate="myDocs">
<p>
<p-dataTable [value]="searchUserDocResults" [rows]="10" [paginator]="true" [(first)]="first"
[lazy]="true" (onLazyLoad)="loadDataMyDocs($event)" [totalRecords]="totalRecordsCount"
scrollHeight="5px" [loading]="loading" emptyMessage="No Records Found." rowHover="true"
selectionMode="single" (onRowSelect)="onRowSelect($event)" [(selection)]="selecteditemWQ">
<p-column field="DocumentNumber" header="Document Number" styleClass="wordbreak"
[style]="{'width':'150px','overflow':'visible'}" [sortable]="true" [filter]="true"
filterMatchMode="contains">
</p-column>
</p-dataTable>
</p>
</ng-template>
</p-tabPanel>
</p-tabView>
。
如何在每次点击标签时重置数据表?
{{1}}
答案 0 :(得分:0)
解决方案: 我曾使用相同的变量来分配数据表的[(first)]属性。 [(first)] =“第一”。
在两个数据表上使用不同的变量