<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"

展开全部
收起
2回答
提交回答
  • 至过去的我

    2044人对此回答表示赞同

    我是未来的你,你现在是不是在年找寻小程序答案。你不要感觉诧异,给你来信原因,就是让你不在后悔。今天去学习如何推广小程序,相信......点击查看更多>
    发布于
  • Shyanne

    18人对此回答表示赞同

    wx.canvasToTempFilePath的第二个参数this指代的是绘图所用的context对象,不是当前page

    展开
    18
    0回复
    发布于 6年前

    评论(0)

    收起评论

  • 本人不在

    18人对此回答表示赞同

    完美解决方案,在绘图过程中可能会设置canvas的宽高(this.setData()这是异步的)

    展开
    18
    0回复
    发布于 6年前

    评论(0)

    收起评论

A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
咨询热线

13312967497

扫码添加业务即可随时咨询 还可领取小程序推广攻略

业务咨询: 13312967497
扫码咨询

扫码咨询套餐

回到顶部