最近用小程序开发了一个叠加照片的功能,遇到了一个比较奇怪的bug
下层是画布,上层是一个触摸调用上传图片的view,上传图片之后会把选择的图片绘制到画布里
测试的时候发现上传完图片触摸调用api的没有关掉,导致上传完图片也可以上传
但是多次上传会导致小程序重启,目前只在体验版中发现了这个问题,电脑端开发工具和体验版均没问题
/** * 选择图片 */ choosePic: function(e){ var that = this; const ctx = wx.createCanvasContext('shareImg');//选择画布 console.log("--选择图片--"); wx.chooseImage({ count: 1, success: function(res) { // 将选择的图片绘制到画布 ctx.drawImage(res.tempFilePaths[0], 0, 0, 200, 200); ctx.drawImage('../img/white.png', 0, 0, 200, 200); ctx.draw(); // tempFilePath可以作为img标签的src属性显示图片 const tempFilePaths = res.tempFilePaths; that.setData({ image:tempFilePaths[0] }) }, }) }
初步怀疑是每次上传图片都叠加在画布上,导致小程序超过微信容器设定的阈值,微信强制重启