请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

加载更多电影数据的事件触发多次是bug吗?

加载更多数据的时候,onScrollLower事件可能被加载多次,导致一次性加载了许多重复的数据,这个在真机上运行也会有问题吗,我用的和老师不同的方法。

代码如下:

//在page之外定义了 var movies = [];

//这样就可以将新的数据追加到data.movies之后

 processDoubanData:function(movieData){

        for(var i in movieData.subjects){

            var subject = movieData.subjects[i];

            //processs title

            var title = subject.title;

            if(title.length>=6){

                title = title.substring(0,6)+"...";

            }

            //processs star

            var temp = {

                stars:subject.rating.stars,

                title:title,

                average:subject.rating.average,

                coverageUrl:subject.images.large,

                movieId:subject.id

            }

            movies.push(temp);  

        }

        this.data.totalCount += 20;//累加请求的数据

        this.setData({

          movies:movies

        });

        wx.hideNavigationBarLoading();

  }, 

  onReady: function () {

    // 页面渲染完成

    //动态设置导航条

    wx.setNavigationBarTitle({

      title: this.data.navigateTitle,

      success: function (res) {

        // success

      }

    })

  },


正在回答

3回答

我也遇到了这个问题 且各种找答案无果 最后自己试出来一个办法 将lower-threshold属性设为0或者1或者很小的值,就可以只加载一次 因为小程序更新后lower-threshold的默认值是50 超过50之后就会多次触发 希望答案有用

1 回复 有任何疑惑可以回复我~
  • 提问者 暴躁的代码 #1
    非常感谢!
    回复 有任何疑惑可以回复我~ 2017-05-19 10:01:57
7七月 2017-04-17 17:35:54

这个问题,我抽时间好好的看一下。

1 回复 有任何疑惑可以回复我~
7七月 2017-04-17 16:52:31

上滑加载更多的这个,之前的scroll-view是没有问题的。后来由于版本更新为了解决一个问题,所以更改成了使用view组件,而不是使用scroll-view,请参考知乎的文章,把scroll-view改为view。

0 回复 有任何疑惑可以回复我~
  • 提问者 暴躁的代码 #1
    @七月老师  
    那个下拉刷新的是可以这样解决,
    但是下滑更新20条数据那,如果在滚动条重置之前,手速快一点,多下滑几次,就会加载重复的数据到页面,和之前那个触摸事件被触发多次的bug很像,这个问题在真机上是可以无视的吗,或者有其他什么方法呢
    回复 有任何疑惑可以回复我~ 2017-04-17 17:31:12
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信