微信小程序 下拉加载执行多次怎么破

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了微信小程序 下拉加载执行多次怎么破相关的知识,希望对你有一定的参考价值。

//碰到过同样的问题, 下拉我用的 onReachBottom 事件

onReachBottom: function()
let page_data = this.data;
if(this.data.has_more == true)
//防止重复、先直接设置FALSE,等返回值再设置
//不要问为啥has_more直接设置FALSE,因为他妹的request只有异步。。。setData可能没生效,所以你阻止不了事件
this.data.has_more = false;

//你的request地址 p是分页地址,在yt_url里面对p++,判断是否有更多 has_more
let yt_url = '';

wx.request(
url: yt_url+'?p='+page_data.p,
data:
,
header:
'content-type': 'application/json'
,
success: function(res)
resultData = res.data
this.data.p = resultData.p //设置页数为返回值的页数,因为setData没那么快。。
this.setData(
has_more : resultData.has_more,//设置页面
p : resultData.p,//是否还有更多
)

)

参考技术A //页面滑动到底部
 bindDownLoad: function () 
   var that = this;
   if (hasmore == true) 
     hasmore = false;
     page ++;
     wx.request(
       url: url,
       method: 'GET',
       data: 
         page: page,
       ,
       success: function (res) 
         for (var i = 0; i < res.data.length; i++) 
           list.push(res.data[i]);
         
         that.setData(
           companydata: list,
         )
         setTimeout(function () 
           hasmore = true;
         , 1000)
       
     )
   
 ,

我取了个巧,用计时器,添加完成数据后1秒后才会把hasmore变成true。这样就是说1秒只能加载一次 。感觉完全够用了。

以上是关于微信小程序 下拉加载执行多次怎么破的主要内容,如果未能解决你的问题,请参考以下文章

微信小程序遇坑——多次点击页面重复加载及数据重复提交

原生的微信小程序有下拉刷新功能,怎么取消下拉刷新?不希望它刷新

微信小程序点击按钮重新加载页面

原生的微信小程序有下拉刷新功能,怎么取消下拉刷新?不希望它刷新

微信在电脑端下拉会刷新

微信小程序怎么做到下拉框关联下拉框