我使用ion-tab
来显示包含inboxitem
并使用ion-list
的网页(ion-infinite-scroll
)。
我在inboxitem.html
<ion-content class="inbox can-swipe-list">
<ion-list>
<ion-list-header>
<ion-select [(ngModel)]="selectedOption" [selectOptions]="filterOptionSettings" (ngModelChange)="getFilteredList()">
<ion-option value="{{option.value}}" *ngFor="let option of listInboxFilterOptions; let i=index" [selected]="i==0">{{option.name}}</ion-option>
</ion-select>
</ion-list-header>
<ion-item-sliding *ngFor="let list of inboxList; let j=index">
<ion-item class="listWithReason" tappable (click)="ViewPopupDetails(j)">
<h2>
<span>{{list.fullname | filterpipes:'manipulatename'}}<br /><small>{{list.leavename}}</small></span>
<div> <ion-icon md="md-calendar" ios="md-calendar"></ion-icon> {{list.fromdate}}{{list.todate!=null ? " to ":" " }}{{list.todate}}</div>
</h2>
<p *ngIf="list.reason!=''">{{list.reason}}</p>
</ion-item>
<ion-item-options side="right" *ngIf="list.empphone=='' || list.empphone==null">
<button ion-button color="grey" class="no-phone">No phone</button>
</ion-item-options>
</ion-item-sliding>
<ion-item class="item-empty-row" *ngIf="!inboxList.length > 0">
{{noRecordsFound}}
</ion-item>
</ion-list>
<ion-infinite-scroll *ngIf="infiniteLoading" (ionInfinite)="loadInboxList(false)" distance="1%">
<ion-infinite-scroll-content></ion-infinite-scroll-content>
</ion-infinite-scroll>
</ion-content>
问题
loadInboxList
方法。所以很清楚它在loadInboxList
方法中没有错,因为在第二个卷轴上根本没有调用它。My ionic和cordova版本
Ionic Framework: 3.5.0
Ionic App Scripts: 1.3.9
Angular Core: 4.1.3
Angular Compiler CLI: 4.1.3
Node: 6.10.3
任何帮助都将受到高度赞赏
答案 0 :(得分:2)
确保在loadInboxList()中调用 infiniteScroll.complete(); 。
如果你在代码中调用infiniteScroll.enable(false),这将阻止滚动在任何后续滚动上工作,直到你再次启用它为止。
修改强>
现在我注意到你没有在你的(ionInfinite)方法中传递事件 -
它应该是这样的:
(ionInfinite)="loadInboxList($event)"
并在你的.ts
loadInboxList(infiniteScroll){
...your code
infiniteScroll.complete()
}