问题模块 | 框架类型 | 问题类型 | API/组件名称 | 终端类型 | 微信版本 | 基础库版本 |
---|---|---|---|---|---|---|
API和组件 | 小程序 | Bug | wx.drawCanvas | 客户端 | 开发者工具:1.02.1904090 | 2.6.6 |
- 当前 Bug 的表现(可附上截图)
async drawCanvas() {
const _that = this
wx.showLoading({ icon: 'none' })
cvsCtx.drawImage(_that.shareInfo.cache_path, 0, 0, _that.canvasSize.width, _that.canvasSize.height)
await wx.drawCanvas({ canvasId: 'share-canvas', actions: cvsCtx.getActions() })
// 到这里往后就不执行了,但是canvas绘图已完成
console.log('finised.') // 控制台未输出结果,loading 一直未消除
const result1 = await wx.canvasToTempFilePath({
canvasId: 'share-canvas' ,
x: 0,
y: 0,
width: _that.canvasSize.width,
height: _that.canvasSize.height,
destWidth: _that.shareInfo.width,
destHeight: _that.shareInfo.height
})
wx.hideLoading()
_that.canvasTempFilePath = result1[1].tempFilePath
}
- 预期表现
控制台输出 finised.
在真机上运行可以正确打印结果并最终调用 wx.hideLoading(),但是在开发者工具的模拟器中,程序执行至 wx.drawCanvas 后,canvas绘制成功,但是之后的代码没有运行。
网友回复
麻烦提供能复现问题的代码片段(https://developers.weixin.qq.com/miniprogram/dev/devtools/minicode.html)