小程序云开发读取数据超过20条

该博客介绍了如何在Node.js环境中创建并运行一个云函数,用于从数据库中批量获取数据。通过初始化云开发环境,利用wx-server-sdk库,实现了通过for循环分批查询work_detail集合中的记录,并将所有数据合并后一次性返回。此方法适用于处理大量数据时避免API调用次数过多的问题。

一、新建node.js云函数

cloudfunctions文件下新建云函数,起名为 getAll 。

二、在index.js文件下写代码

// 云函数入口文件
const cloud = require('wx-server-sdk')

// 云开发环境初始化
cloud.init({env: cloud.DYNAMIC_CURRENT_ENV})

exports.main = async (event, context) => {
    const db = cloud.database()
    // 1,获取数据的总个数
    let count = await db.collection('work_detail').count()
    count = count.total
    // 2,通过for循环做多次请求,并把多次请求的数据放到一个数组里
    let all = []
    for (let i = 0; i < count; i += 1000) { //自己设置每次获取数据的量
      let list = await db.collection('work_detail').skip(i).get()
      all = all.concat(list.data);
    }
    // 3,把组装好的数据一次性全部返回
    return all;
  }
 

 三、使用

wx.cloud.callFunction({
            name: 'getAll',
        }).then(res => {
            console.log(res.result);
})

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值