微信小程序 - 01 - 一些补充和注意点(补充ing...)

目录

最近在学微信小程序,把学习过程中的一些补充和注意点总结一下,内容会比较简单,因为只涉及基础知识,供个人参考

一、节流

情景:有一个按钮,点击会发送请求,用户可能会连续点击,但是我想即便在用户连续点击按钮的情况下,只有上一个请求发送完毕后,才能发送下一个请求

javascript 复制代码
data: {
    isLoading: false
}
// 发请求
getNameList() {
    this.setData({
        isLoading: true // 开启节流,相当于锁住了    
    })
    wx.request({
        url: 'xxx',
        method: 'GET',
        complete: () => {
            // 关闭节流,相当于打开锁
            this.setData({
                isLoading: false            
            })        
        }    
    })
}
// 事件,里面需要发请求
changeName() {
    if(this.data.isLoading) return // isLoading为true,说明上一个请求还在发送中,这时候不能再次发送请求
    getNameList()
}

二、在一个发请求的函数中,只有发生下拉动作,才执行关闭下拉代码

情景:用户发生下拉刷新的动作,于是触发函数,向后端发送请求,在请求结束后,要关闭下拉刷新的效果。但是这个函数不是只有下拉刷新的时候才触发,其他情况也要用到这个函数,我想只有发生下拉刷新才执行函数里的关闭下拉刷新代码,其余情况不执行

javascript 复制代码
  // 发请求获取id对应的数据
  getShopList(cb) {
    wx.request({
      url: `xxx`,
      method: 'GET',
      complete: () => {
        // 关闭下拉刷新的效果(只有下拉了,才需要关闭这个效果,其余情况不需要关闭)
        cb && cb()
      }
    })
  },
// 页面相关事件处理函数--监听用户下拉动作
  onPullDownRefresh() {
    // 重新发起数据请求
    this.getShopList(() => { // 传递了关闭下拉刷新的代码,在getShop函数里会执行该代码
      wx.stopPullDownRefresh()
    })
  },
// 普通事件
changeShop() {
	getShopList() // 没有传递参数,则在getShop函数里不会执行关闭下拉刷新的代码
}
相关推荐
说私域2 小时前
短视频私域流量池的变现路径创新:基于AI智能名片链动2+1模式S2B2C商城小程序的实践研究
大数据·人工智能·小程序
毕设源码-邱学长3 小时前
【开题答辩全过程】以 基于微信小程序的松辽律所咨询系统的设计与实现为例,包含答辩的问题和答案
微信小程序·小程序
+VX:Fegn08956 小时前
计算机毕业设计|基于springboot + vue物流配送中心信息化管理系统(源码+数据库+文档)
数据库·vue.js·spring boot·后端·小程序·课程设计
说私域6 小时前
B站内容生态下的私域流量运营创新:基于AI智能名片链动2+1模式与S2B2C商城小程序的融合实践
人工智能·小程序·流量运营
计算机毕设指导66 小时前
基于微信小程序的钓鱼论坛系统【源码文末联系】
java·spring boot·mysql·微信小程序·小程序·tomcat·maven
qq_12498707536 小时前
基于微信小程序的宠物交易平台的设计与实现(源码+论文+部署+安装)
java·spring boot·后端·微信小程序·小程序·毕业设计·计算机毕业设计
kyh10033811208 小时前
第二个微信小游戏《汉字碰碰消》上线啦!
微信·微信小程序·微信小游戏·去水印微信小程序·养了个羊
计算机毕设指导69 小时前
基于微信小程序的精致护肤购物系统【源码文末联系】
java·spring boot·微信小程序·小程序·tomcat·maven·intellij-idea
myzshare19 小时前
实战分享:我是如何用SSM框架开发出一个完整项目的
java·mysql·spring cloud·微信小程序
sheji341621 小时前
【开题答辩全过程】以 基于微信小程序的在线学习系统为例,包含答辩的问题和答案
学习·微信小程序·小程序