我用的微信开发者工具编写以下代码,调用getChartData云函数(代码2)
// 代码1
app.getAjax({
url:'getChartData',
success(res){
let data = res.result.list;
}
}
// 代码2
// 云函数入口文件
const cloud = require('wx-server-sdk')
cloud.init({
traceUser: true,
// env:'book-5gutgylj4b76278c'
});
const db = cloud.database();
const $ = db.command.aggregate;
// 云函数入口函数
exports.main = async (event, context) => {
const _ = db.command;
return await db.collection('bookList').aggregate().match({
_openid: event.userInfo.openId,
amtType: event.amtType,
bookYear:event.year,
bookMonth: { $gte: event.beginMonth, $lte: event.endMonth }
}).group({
_id: {
bookTypeName: '$bookTypeName',
bookTypeIcon: '$bookTypeIcon',
bookTypeId:'$bookTypeId'
},
count: $.sum('$bookAmt')
}).end();
}
代码1中的data是空列表,如下图的list
但是我开启可视化模式后就有数据了,list有两个数据
云函数权限也改成普通用户可读了
建议你把在云函数里面执行时的过滤条件打印出来看下