要在上层函数中获取then返回的canvas,可以使用async/await来处理html2canvas()的返回值。例如:

async function captureAndReturnCanvas() {
  try {
    const canvas = await html2canvas(document.body);
    return canvas;
  } catch (error) {
    console.error('Error capturing canvas:', error);
  }
}

captureAndReturnCanvas().then(canvas => {
  // 在上层函数中获取到返回的canvas
  console.log(canvas);
});

在上面的示例中,captureAndReturnCanvas()函数使用async关键字将其标记为一个异步函数。在函数内部,我们使用await关键字来等待html2canvas()的返回结果。一旦html2canvas()返回了结果(即生成了canvas),它将被赋值给canvas变量,并作为captureAndReturnCanvas()函数的返回值。

在上层函数中,我们使用.then()方法来处理captureAndReturnCanvas()的返回值,这样我们就可以在then回调函数中获取到生成的canvas。

html2canvas() 返回 canvas 并使用 async/await 获取 - JavaScript 技巧

原文地址: https://www.cveoy.top/t/topic/bJ5 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录