async function getRandomList(event){ const queryResult = await db.collection('subject1') .aggregate() .match({ typeText: '判断' }) .sample({ size:3 }) .end() console.log(queryResult); const {list, errMsg} = queryResult; if (errMsg == "collection.aggregate:ok"){ return { errCode:0, errMsg:errMsg, questionList:list, } }else{ return { errCode:1, errMsg:errMsg, } } } /** * 随机查询题目列表 * @param {object} event */ async function getRandomList1(event){ const queryResult = await db.collection('subject1') .aggregate() .match({ typeText: '单选' }) .sample({ size:1 }) .end() console.log(queryResult); const {list, errMsg} = queryResult; if (errMsg == "collection.aggregate:ok"){ //查询成功返回的数据 return { errCode:0, errMsg:errMsg, questionList:list, } }else{ //查询失败返回的数据 return { errCode:1, errMsg:errMsg, } } } /** * 随机查询题目列表 * @param {object} event */ async function getRandomList2(event){ const queryResult = await db.collection('subject1') .aggregate() .match({ typeText: '判断' }) .sample({ size:2 }) .end() console.log(queryResult); const {list, errMsg} = queryResult; if (errMsg == "collection.aggregate:ok"){ //查询成功返回的数据 return { errCode:0, errMsg:errMsg, questionList:list, } }else{ //查询失败返回的数据 return { errCode:1, errMsg:errMsg, } } } // 查询数据库集合云函数入口函数 exports.main = async (event, context) => { // 返回数据库查询结果 return getRandomList(event); };
请问怎么使用云函数能做到随机组卷?例如:同一个集合中随机A类型10条,B类型取20条,C类型取10条例如:同一个集合中随机A类型10条,B类型取20条,C类型取10条
2022-03-18你好 云开发中云函数如何同时各取三种类型中的10条、20条、20条数据
云开发中云函数如何同时各取三种类型中的十条数据我在云开发中遇到一个很大困惑 await db.collection(‘table’).where({ type:db.command.or(1,2,3) }).limit(10).get() 上面这条代码能获取type为1、2、3的共十条, 但是我的需求是1、2、3各十条,也就是总共30条数据,我不想读取3次数据,不然效率太低。 应该如何写,刚开始学习,洗完有懂得指点一下。
2022-03-15你好,同样问题请问如何解决?
Cannot read property 'getUserInfo' of undefined?请大神伸出援手,万分感谢! onLoad(e) { var that = this; wx.getUserInfo({ success(res) { wx.u.getUserInfo().then(res1 => { //红褐色部分为提示错误处 var bmobUser = res1.result; if (bmobUser.avatarUrl == '' || bmobUser.avatarUrl == undefined) { wx.u.changeUserInfo(res.userInfo.avatarUrl, res.userInfo.nickName).then(res2 => { }); } }) that.setData({ userInfo: res.userInfo }) } }) },
2022-03-01