优化代码wx.cloud.callFunction({ name: 'login', data: {}, success: res => { console.log('[云函数] [login] user openid: ', res.result.openid) this.globalData.openid = res.result.openid }, fail: err => { console.error('[云函数] [login] 调用失败', err) } })
时间: 2024-02-14 20:17:02 浏览: 111
小程序中wx.xx is not a function的报错
5星 · 资源好评率100%
可以将这段代码进一步优化,使用 async/await 语法简化回调函数的嵌套,使代码更加清晰易读。修改后的代码如下:
```
try {
const res = await wx.cloud.callFunction({ name: 'login', data: {} })
console.log('[云函数] [login] user openid: ', res.result.openid)
this.globalData.openid = res.result.openid
} catch (err) {
console.error('[云函数] [login] 调用失败', err)
}
```
这里使用了 try/catch 语句来捕获异步调用产生的错误,并使用 await 关键字等待异步调用的结果。这样,在调用 cloud function 的过程中出现错误时,会直接跳转到 catch 代码块,方便我们处理错误。同时,也减少了回调函数的嵌套,使代码更加清晰易读。
阅读全文