首页 > 解决方案 > 如何在 React 中打印 base64 格式的 svg 元素?

问题描述

我上传svg文件如下:

if (event.target.files && event.target.files[0]) {
  let reader = new FileReader();

  reader.onloadend = upload => {
    let result = upload.target.result // in base64 format  
  };

  reader.readAsDataURL(file);  
}

结果是base64格式。我可以svg使用标签在 DOM 中显示这个文件img,但我想使用svg标签。

如何通过svg在 React 中使用节点在 dom 中显示这个 svg 文件?

标签: javascriptreactjssvg

解决方案


您可以使用atob()解码base64,所以这应该工作:

render() {
    return <div dangerouslySetInnerHTML={{ __html: atob(base64String) }} />
}

推荐阅读