微信小程序 promiss风格 和sync/await风格使用
直接上图:
promiss风格:
1 exports.main = async (event, context) => { 2 return new Promise((resolve, reject) => { 3 db.collection('register').add({ 4 // data 字段表示需新增的 JSON 数据 5 data: { 6 description: "learn cloud database", 7 due: new Date("2018-09-01"), 8 tags: [ 9 "cloud", 10 "database" 11 ], 12 location: new db.Geo.Point(113, 23), 13 done: false 14 } 15 }).then(res => { 16 //返回值 17 resolve(res) 18 }) 19 }) 20 }
sync和await 风格:
exports.main = async (event, context) => { const openid = cloud.getWXContext().OPENID let data = event.insertData dataJson ={ "modelid": data.modelid, "name": data.name, "phone": data.phone, "postid": data.postid, "registerTime": data.registerTime, "remarks": data.remarks, "right": data.right, "sex": data.sex, "unitid": data.unitid, "openid": openid, "checkState":0 } //用await,等执行完(.add会返回一个promis对象用then来接收值),再返回 let result=await db.collection('register').add({ // data 字段表示需新增的 JSON 数据 data: dataJson }).then(res=>{ return res }) return result }
这样做的目的是后面函数需要用到前面函数得到的值,后面函数必须等前面函数执行完,才能执行。异步