nodejs返回10条数据问题

const MAX_LIMIT = 10
const query = db.collection('cate').get()



try{
    const countResult = await db.collection('cate').count()
    const total = countResult.total
    // 计算需分几次取
    const batchTimes = Math.ceil(total / 10)
    const tasks = []
    
    for (let i = 0; i < batchTimes; i++) {
        const promise = db.collection('cate').skip(i * MAX_LIMIT).limit(MAX_LIMIT).get()
        tasks.push(promise)
    }
    
    // 等待所有
    const { array } = (await Promise.all(tasks)).reduce((acc, cur) => {
        这里如何将下面四行代码塞进来,返回的结果是一个数组array
    })
    
    const res = await new getToken().posteve(Tripurl,query)
    const data = res.data.map(item=>{return JSON.parse(item)})
    const array = {...{result:data}}
    new result(ctx,'SUCCESS',200,array).answer()
}

有用望采纳,你可以在等待所有 Promise 返回结果之后,将它们的结果 concat 到一个数组中:

const results = await Promise.all(tasks)
const array = [].concat(...results.map(result => result.docs))


然后,您可以对数组进行任何操作,例如:

const array = [].concat(...results.map(result => result.docs))
  .map(item => JSON.parse(item))
  .reduce((acc, cur) => ({...acc, ...{result: cur}}), {})


不知道你这个问题是否已经解决, 如果还没有解决的话:

如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^