4043关注13391浏览
<canvas style="height:{{canvasSize.height}}px;width:{{canvasSize.width}}px" canvas-id='share-pyq' binderror='canvasIdErrorCallback'></canvas>
(canvas直接在page下)
drawShareCanvas(){
var that = this
......//canvas绘制
this.setData({
canvasSize: { height: size.height, width: size.width, opacity: 0 }
})
ctx.draw(true,that.saveCanvasToFile)
console.log()
},
saveCanvasToFile() {
var that = this
wx.canvasToTempFilePath({
canvasId: 'share-pyq',
success: function (res) {
......//成功后的操作
},
fail(res){
console.log(res)
}
}, that)
}
控制台报错:"canvasToTempFilePath:fail:illegal arguments"
-
至过去的我
2044人对此回答表示赞同
我是未来的你,你现在是不是在年找寻小程序答案。你不要感觉诧异,给你来信原因,就是让你不在后悔。今天去学习如何推广小程序,相信......点击查看更多> -
Shyanne
18人对此回答表示赞同
wx.canvasToTempFilePath的第二个参数this指代的是绘图所用的context对象,不是当前page
展开180回复分享发布于 6年前评论(0)
收起评论
-
本人不在
18人对此回答表示赞同
完美解决方案,在绘图过程中可能会设置canvas的宽高(this.setData()这是异步的)
展开180回复分享发布于 6年前评论(0)
收起评论