我先说问题:
canvas在组件中时,要求需要传入组件实例,但插件并没有处理这一情况。导致提交打印任务时一直没有响应,看源码分析draw的第二个参数回调并没有执行,导致既没有返回成功也没有返回失败。
经过测试:
只有如下情况draw第二个参数才会触发!
const instance = getCurrentInstance();
const context = uni.createCanvasContext('lpapi-ble-uni2', instance);
context.draw(false, () => {
console.log('draw complete');
uni.canvasToTempFilePath({
canvasId: 'lpapi-ble-uni2',
success: function (result) {
console.log('success', result);
},
fail(result) {
console.log('fail', result);
},
complete(result) {
console.log('complete', result);
},
}, instance);
});
<canvas id="lpapi-ble-uni2" canvas-id="lpapi-ble-uni2" :style="{ width: '300px', height: '300px' }"
style="position: fixed; left: -999999rpx; top: -999999rpx" />
0 个回复