将js图像反应为base64

Ill*_*lud 6 reactjs

我想将图像从reactjs转换为base64以将该图像保存在mongo中,而无需将图像上传到服务器,然后如果不直接转换图像则进行转换

ram*_*sls 6

我分享我的解决方案

const getEmergencyFoundImg = urlImg => {
  var img = new Image();
  img.src = urlImg;
  img.crossOrigin = 'Anonymous';

  var canvas = document.createElement('canvas'),
    ctx = canvas.getContext('2d');

  canvas.height = img.naturalHeight;
  canvas.width = img.naturalWidth;
  ctx.drawImage(img, 0, 0);

  var b64 = canvas.toDataURL('image/png').replace(/^data:image.+;base64,/, '');
  return b64;
};
Run Code Online (Sandbox Code Playgroud)

我建议使用 async/await 调用此函数来构建帖子的对象。

该方法从此源中提取它: https ://base64.guru/developers/javascript/examples/convert-image