当列表中没有任何项目时,如果我滚动内容,则会调用doInfinite()。
我只是在IOS上遇到这个问题。
以下是相关代码。
.ts文件有:
doInfinite(infinite){
setTimeout( ()=> {
infinite.complete();
}, 2000);
}
模板文件有:
<ion-content padding>
<ion-infinite-scroll (ionInfinite)="doInfinite($event)" threshold="100px" #infiniteScroll>
<ion-infinite-scroll-content loadingSpinner="bubbles" loadingText="Loading more data...">
</ion-infinite-scroll-content>
</ion-infinite-scroll>
</ion-content>
问题:当我滚动内容区域时,正在调用doInfinte()方法。
P.S.
我们屏幕上没有任何项目。
有人有解决方法吗?
答案 0 :(得分:0)
如果我理解您的问题,您希望在没有任何数据时禁用无限滚动。
检查docs
<ion-infinite-scroll (ionInfinite)="doInfinite($event)" threshold="100px" #infiniteScroll [enabled]="isEnabled">
<ion-infinite-scroll-content loadingSpinner="bubbles" loadingText="Loading more data...">
</ion-infinite-scroll-content>
</ion-infinite-scroll>
您可以根据数据是否在组件中可用,将isEnabled
设置为true或false。
第二个选项是使用enable()
函数。
使用ViewChild
获取组件中的InfiniteScroll
引用:
@ViewChild('infiniteScroll')infiniteScroll:InfiniteScroll;
并致电
this.inifiniteScroll.enable(false);
需要时。