wepy.getUpdateManager()没有返回正确的promise

6ss1mwsb  于 2个月前  发布在  其他
关注(0)|答案(3)|浏览(36)

Description

前提:项目已安装并使用promisify, this.use("promisify") ;且 const res = await wepy.request({}); const res = await showModal() 等wepy包装过的promise API使用async await均正常。

Environment

  • Platform: 开发者工具
  • Platform version: 2.6.1
  • wepy-cli version: 1.7.3
  • wepy version: 1.7.0

Reproduce

// app.wpy 中检查更新
onLaunch() {
  this.checkUpdate();
}

async checkUpdate() {
  const updateManager = wx.getUpdateManager();
  console.log(updateManager); 
  // => updateManager对象

  console.log(wepy.getUpdateManager());
  // => Promise {_state: 0, _handled: false, _value: undefined, _deferreds: Array(0)}
  const updateManager1 = await wepy.getUpdateManager();
  console.log(updateManager1);
  // 无法到达
}

Observed Results

wepy.getUpdateManager() 返回的是空的promise,没有resolved,导致 const updateManager1 = await wepy.getUpdateManager(); 之后无法执行。
使用原生 wx.getUpdateManager() 正常。

Expected Results

wepy.getUpdateManager() 返回正确的promise,通过await可获取到updateManager对象。

相关API小程序文档: https://developers.weixin.qq.com/miniprogram/dev/api/wx.getUpdateManager.html

相关问题