1.客户端调用云函数(呼叫云服务器)
uniCloud.callFunction({
name: "Read", //name为呼叫的云函数名,为字符串格式
data: data, //data为传递过去的数据,可用于查询,修改。data格式为对象格式
}).then(res=>{console.log("调用成功的方法")
}).catch(mes=>{
console.log("调用失败的方法")
})
2.云函数响应客户端呼叫
(1)、查询
'use strict';
exports.main = async (event, context) => {
//event为客户端上传的参数
// console.log('event : ', event)
//返回数据给客户端
return new Promise((resolve,reject) =>{
const db = uniCloud.database()
const collection = db.collection("表名").where("客户端传递的数据").get({
getCount:true
}).then(res => {
resolve(res)
})
})
return event
};
(2)、修改
'use strict';
const db = uniCloud.database()
exports.main = async (event, context) => {
//event为客户端上传的参数(data)
let res = await db.collection('表名').doc(event._id).update({"需要修改的字段":"客户端传递的数据"//(需要修改的数据,可修改多个,不能修改_id)
})
//返回数据给客户端
return event
};
(3)、添加
'use strict';
const db = uniCloud.database()
exports.main = async (event, context) => {
//event为客户端上传的参数(data)
console.log('event : ', event)//这里调用了另外一个云函数,是我的需求,可去除
await uniCloud.callFunction({
name: "qx",
data: event
}).then(result => {// users为需要添加到那个数据库里面(表名)
//result.result 为需要添加的数据
let res = db.collection('users').add(result.result)
return res
}).catch(err => {
console.log(err.message)
})
//返回数据给客户端
return event
};