谢老师:请问为何AppData明明看到有了一个数组(通过云函数BookingList调取的数据库中user'集合的数据),但始终没法渲染出来的原因,代码余下,求解答,感谢!
//云函数BookingList
const cloud = require('wx-server-sdk')
cloud.init()
const db = cloud.database()
const MAX_LIMIT = 100
exports.main = async (event, context) => {
// 先取出集合记录总数
const countResult = await db.collection('user').count()
const total = countResult.total
// 计算需分几次取
const batchTimes = Math.ceil(total / 100)
// 承载所有读操作的 promise 的数组
const tasks = []
for (let i = 0; i < batchTimes; i++) {
const promise = db.collection('user').skip(i * MAX_LIMIT).limit(MAX_LIMIT).get()
tasks.push(promise)
}
// 等待所有
return (await Promise.all(tasks)).reduce((acc, cur) => {
return {
data: acc.data.concat(cur.data),
// errMsg: acc.errMsg,
}
})
}
//'user'集合中有一个数据库为:
"XXXd81"
"_openid":
"XXXko"
"date":
"2019-12-02"
"region":
"广东省,XX市,XX区"
"Name":
"类型名称"
"rubbishWeight":
"8"
"totalPrice":
"3"
"userAdress":
"XX园"
"userMobile":
"189XXXXX"
"userName":
"姓名"
"way":
"晚上18:00-21:00"
// pages/shou/shou.js
const db = wx.cloud.database(); //初始化数据库
Page({
/**
* 页面的初始数据
*/
data: {
bookingArr: []
},
onLoad: function(options) {
// 调用云函数'BookingList;
wx.cloud.callFunction({
name: 'BookingList'
}).then(res => {
console.log('调用云函数BookingList的结果:', res)
this.setData({
bookingArr: res.result.data
})
}).catch(err => {
console.log('调用云函数BookingList失败', err)
})
},