1. 程式人生 > >ionic-infinite在隱藏後,重新整理頁面重新載入資料,無法下拉載入的問題

ionic-infinite在隱藏後,重新整理頁面重新載入資料,無法下拉載入的問題

問題描述:

/** * doInfinite上拉載入 */ doInfinite(infinite) { this.index++; this.infinite=infinite; /**如果conArr的長度與總數量相同,則下拉載入停止 */
if( this.conArr.length>= this.totalNum){ infinite.enable( false); } var
typeId= this.typeArr.find(item =>{ if(item.selected){ return item; } }) setTimeout(() => { console.log( '上拉載入==>'+ this.index); this.requestData(typeId.encyclopedias_type_id, this.index); infinite.complete(); }, 2000
); } 如上面程式碼所述,當conArr的長度大於等於totalNum時,inifinite.enable(false)——刪 除事件偵聽器和隱藏顯示滾動

當時在當前型別上拉載入完所有資料以後,點選型別切換,在下拉載入資料時上拉載入不再顯示。

解決:

因為inifinite.enable(false)使事件監聽器已經被刪除及滾動被隱藏,所以當在型別切換後上拉載入時,因為上拉載入已被刪除,所以它的時間doInfinite()不會再被觸發。

所以設定一個引數接收上拉載入傳的$event,this.infinite=infinite;  並在型別切換時顯示上拉載入事件

if( this.infinite){ this.infinite.enable( true); }