Javascript 如何从已加载的资源中检索SVG数据?

Javascript 如何从已加载的资源中检索SVG数据?,javascript,reactjs,pdf,svg,Javascript,Reactjs,Pdf,Svg,在我的React应用程序中,我有一个svg资产,如下所示: import appIcon from '../assets/dot-to-dot-icon.svg'; 我想将已经缓存的徽标添加到PDF文档中,为此我需要将svg数据作为字符串或xml类型的数据传递给PDF创建方法,但我被卡住了 任何帮助都将不胜感激。如果您以这种方式导入,那么appIcon应该是SVG文件的URL 一旦有了它,就可以使用fetch()来获取文件的内容。 大概是这样的: fetch("https://api.exam

在我的React应用程序中,我有一个svg资产,如下所示:

import appIcon from '../assets/dot-to-dot-icon.svg';
我想将已经缓存的徽标添加到PDF文档中,为此我需要将svg数据作为字符串或xml类型的数据传递给PDF创建方法,但我被卡住了


任何帮助都将不胜感激。

如果您以这种方式导入,那么
appIcon
应该是SVG文件的URL

一旦有了它,就可以使用
fetch()
来获取文件的内容。 大概是这样的:

fetch("https://api.example.com/items")
  .then(res => res.text())
  .then(svg => {
     // 'svg' should contain the contents of the svg
  })

如果资产已经在DOM中,该怎么办?我尝试过getElement和getAttribute,但我不知道如何访问数据,有什么想法吗?抓取应该可以,因为文档应该来自缓存。但是,如果您有对DOM元素节点的引用,那么您应该能够执行
Element.innerHTML
以字符串形式获取它。谢谢Paul,我应该在我的帖子中提到svg被插入到img标记中,因此阻止了对其内部的访问,在我将其更改为对象标记之后,一切都正常了。