微信小程序 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

}

  这样做的目的是后面函数需要用到前面函数得到的值,后面函数必须等前面函数执行完,才能执行。异步

posted @ 2020-01-16 10:36  豆豆之家  阅读(459)  评论(0编辑  收藏  举报