• 上拉加载更多异步请求?


    关注 码龄 粉丝数 原力等级 -- 被采纳 被点赞 采纳率 m0_62833091 2024-08-11 10:26 采纳率: 60% 浏览 4 首页/ 小程序 / 已采纳 上拉加载更多异步请求? 微信小程序 当点击查询的事件后,能正常显示数据和总计数,当上拉加载时并没有加载数据,计数也变成了0,打印出来的数据也是0,怎么解决? /**    * 按条件查询数据    */   formSubmit(start = 0) {     const that = this;     that.setData({       isQuerying: true     })   let sumlist = db.collection("wehicle").where({     startPoint: that.data.startPoint,     goal: that.data.goal,   });   if (start > 0) {     sumlist = sumlist.skip(start);   }   sumlist.limit(2).orderBy("create_time", "desc").get().then(res => {     console.log(res);     const sumlistress = res.data;     sumlist.count().then(res => {       console.log(res)       that.setData({         result:res.total       })     })     let hasmore = false     let newsumlistress = [];     if (start > 0) {       newsumlistress = that.data.sumlistress.concat(sumlistress);     } else {       newsumlistress = sumlistress;     }     newsumlistress.forEach((wehicle, index) => {       wehicle.create_time = wehicle.create_time.toString();     })     that.setData({       sumlistress: newsumlistress,       hasmore: hasmore,     })   });   /**    * 页面上拉触底事件的处理函数    */   onReachBottom() {     let hasmore = true;     if(this.data.wehicles.length == 0){       hasmore = false     }     if(!this.data.isQuerying) {       this.lowdrelease(this.data.wehicles.length);       }else{         this.formSubmit(this.data.sumlistress.length);     } // 打印出来的是undefined     console.log(this.formSubmit(this.data.sumlistress.length));     this.setData({       hasmore:hasmore     })   }, 展开全部 收起 写回答 好问题 0 提建议 追加酬金 关注问题 微信扫一扫 点击复制链接 分享 邀请回答 编辑 收藏 删除 结题 收藏 举报 追加酬金 (90%的用户在追加酬金后获得了解决方案) 当前问题酬金 ¥ 0 (可追加 ¥500) ¥ 15¥ 20¥ 50¥ 100¥ 200 支付方式 扫码支付 二维码出错 点击刷新 支付金额 15 元 提供问题酬金的用户不参与问题酬金结算和分配 支付即为同意 《付费问题酬金结算规则》 结题 再想想 删除 再等等

    2条回答 默认 最新

    • 关注

      上午好☀️☀️☀️️
      本答案参考ChatGPT-3.5

      你的问题看起来是在一个循环中,你试图使用await来等待for循环完成,但这样会导致整个for循环直到所有任务都完成才结束,这就是为什么控制台中的print语句会输出undefined的原因。

      解决方案是改变你的for循环结构,使其在每次for循环结束后立即返回。例如:

      for (let i = 0; i < this.data.sumlistress.length; i++) {
          console.log(i);
      }
      

      另外,由于在for循环中你没有做任何错误处理,所以你可能还会遇到其他的问题。你需要确保你的数据已经被正确地初始化,并且在需要的时候可以访问它们。

      如果你有任何具体的代码片段或者问题,我很乐意帮助你更深入地理解这个问题。

      本回答被题主选为最佳回答 , 对您是否有帮助呢?
      评论
    查看更多回答(1条)
    编辑
    预览

    报告相同问题?

  • 相关阅读:
    【申博攻略】北京交通大学2023年学术型博士招生简章有哪些变化?
    Hadoop3教程(四):HDFS的读写流程及节点距离计算
    2023年软考高级系统规划与与管理师备考策略
    HTML5提供的文件API
    离散制造业生产域制造资源数据标准化及治理建设思路
    系列文章|云原生时代下微服务架构进阶之路 - Spring Cloud Stream
    java计算机毕业设计消防网站源码+系统+数据库+lw文档+mybatis+运行部署
    pycharm远程连接miniconda完整过程,以及遇到的问题解决
    Faiss原理和使用总结
    echart 雷达图
  • 原文地址:https://ask.csdn.net/questions/8136373