组件内wx.canvasToTempFilePath({},this) 执行一次
发布于 5 年前 作者 fanjuan 10992 次浏览 来自 问答

组件内需要用canvas生成图片,保存到本地

执行第一次操作,成功

再次执行相同操作 wx.canvasToTempFilePath 事件没有任何反应

现在我有多个生成图片按钮,想要多次执行,现在只能执行一次,再操作wx.canvasToTempFilePath完全不执行。

组件内结构

<view class=“canvas__box”>

<canvas canvas-id=“myCanvas” style=“width:{{canvasWidth}};height:{{canvasHeight}}” />

</view>

js文件内

/**

 * 创建截图

*/

createPoster: function () {

        const ctx = wx.createCanvasContext(‘myCanvas’, this);

        ctx.setFillStyle(’#fcfcfc’);

        ctx.fillRect(0, 0, 500, 500);

       ctx.draw();

}

/**

* 生成图片

*/

saveToAlbumn: function () {

    var self = this;

    wx.canvasToTempFilePath({

            canvasId: ‘myCanvas’,

            quality: 1,

            fileType: ‘jpg’,

            success: function (res) {

                var tempFilePath = res.tempFilePath;

                wx.saveImageToPhotosAlbum({})

            }

    },this)

}

3 回复

同问,请问解决了吗?

第一次能调用成功,第二次就根本没调用。

同问,有解决方法吗?

一样 同求答案,不再组件就没事

回到顶部