下面是演示问题的视频:
小程序中访问数据库可以获得2条记录,但是调用云函数却没有记录,下面是小程序
// miniprogram/pages/yltx/cs.js
Page({
onLoad: async function (options) {
const db=wx.cloud.database()
const _=db.command
let r1=await db.collection('cs').aggregate()
.match({
group: _.elemMatch({
creator: true,
name: _.or(['信息系','机电系'])
})
}).end()
console.log(1,r1)
let r2=await wx.cloud.callFunction({
name:'cs',
})
console.log(2,r2)
},
})
这写的是云函数:
// 云函数入口文件
const cloud = require('wx-server-sdk')
cloud.init()
const db = cloud.database()
const _=db.command
// 云函数入口函数
exports.main = async (event, context) => {
let r1=await db.collection('cs').aggregate()
.match({
group: _.elemMatch({
creator: true,
name: _.or(['信息系','机电系'])
})
}).end()
return r1
}
下面是集合
测试用的集合cs,总共就3条记录,group是数组,表示该用户所属的分组,一个用户可属于多个分组,creator表示是否是该组的创建者
使用 in 方法正常返回。
name: _.in(["信息系", "机电系"])
哈哈哈哈哈哈哈哈哈感觉老师您这个视频是在讲课 全程认真听:)
昨天出现这个情况,觉得非常不可理解,也不知道该如何提问,我知道帖子比较多,很难引起别人的注意,官方人手不足,回答问题经常是隔靴挠痒,虽然换种方式解决了问题,但列出的应该还是问题,不知道官方能不能说明一下。
一夜没有休息好,头疼的厉害,问题得到解决可极大缓解头疼的问题,再次向brave兄弟表示感谢!!!
你好,反馈已收到,我们看看。