2017-04-06 111 views
1

我正在使用Ionic2。离子2无限滚动不与标签工作

系统信息:

Cordova CLI: 6.4.0 
Ionic Framework Version: 2.3.0 
Ionic CLI Version: 2.1.18 
Ionic App Lib Version: 2.1.9 
Ionic App Scripts Version: 1.1.4 
ios-deploy version: Not installed 
ios-sim version: Not installed 
OS: macOS Sierra 
Node Version: v6.9.4 
Xcode version: Xcode 8.3 Build version 8E162 

我有一个infinite scroll它完美的作品,装载15个项目在同一时间。当我向下滚动,它加载另一个15等:

 ... 
    </ion-list> 

    <ion-infinite-scroll id="infinite-scroll-search" (ionInfinite)="doInfinite($event)"> 
    <ion-infinite-scroll-content id="infinite-scroll-content-search"></ion-infinite-scroll-content> 
    </ion-infinite-scroll> 

不过,我再加入tabs,包括我原来的页面:

<ion-tabs> 
    <ion-tab [root]="tab1Root" tabTitle="Page1" tabIcon="person"></ion-tab> 
    <ion-tab [root]="tab2Root" tabTitle=Page2" tabIcon="heart"></ion-tab> 
    <ion-tab [root]="tab3Root" tabTitle=Page3" tabIcon="briefcase"></ion-tab> 
</ion-tabs> 

的标签正常工作,在该底部显示页。但是,当我向下滚动时,不会调用doInfinite($event)函数,因为它在添加选项卡之前进行了向下滚动。因此,它不会加载超过15行。

看起来好像选项卡影响了页面滚动事件。滚动到底部不会触发ionInfinite事件并调用doIninite($event)了。

第一次页面加载无限滚动工作,但如果我点击选项卡图标加载页面,然后ionInfinite事件不起作用。所以它可能与标签如何缓存数据有关。

有其他人遇到过这个问题吗?有没有人有任何想法,我可以如何调试?

任何帮助表示赞赏。

回答

2

我通过加载ionViewDidLoad中的项目数组而不是ionViewWillEnter来解决此问题。

+0

遇到同样的问题,@理查德,请你提供代码? –