自用获取数据函数封装

博客介绍了一个根据个人项目接口数据封装的自用函数,该函数不具普遍性,主要用于简化项目操作,代码仅适合借鉴学习,不适合直接复制。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

本函数根据个人项目接口数据封装自用,不具备普遍性,只是为了简化自己在项目中的操作。换句话说,这几行代码只适合借鉴学习,不适合ctrl+c&ctrl+v

    //封装获取数据上拉加载函数
const getList = (requestFun, page,listObj) => {
  //加入promise,可以做除了常规操作以为的操作
  return new Promise((resolve,reject)=>{
    if (page.data.requestFlag)
      return
    let list = `${listObj}` || 'list'
    page.setData({
      requestFlag: true
    })
    requestFun.then(res => {
      resolve(res)
      if (res.data.data) {
        page.setData({
          [`${list}`]: [...page.data[`${list}`], ...res.data.data]
        })
        page.data.pageNum++
        page.data.pages = res.data.pages
      }
      page.setData({
        requestFlag: false
      })
      if (page.data.pageNum > page.data.pages) {
        page.data.requestFlag = true
        page.setData({
          more: true,
          moreText: res.data.total > 0 ? '共 ' + res.data.total + ' 条数据已全部加载' : '暂无数据'
        })
      }
    })
      .catch(err => {
        page.setData({
          requestFlag: false
        })
        reject(err)
      })
  })
}
//刷新数据,配合上面的函数getList使用
const refresh=(page,obj)=>{
  page.data.pages = 1
  page.data.pageNum = 1
  page.data.requestFlag = false
  page.setData({
    list: [],
    more: false
  })
}
复制代码

转载于:https://juejin.im/post/5ce11a6651882525cc7078a5

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值