我使用的是 font-awesome svg 图标,但我意识到它们可能会对我网站的 LCP 产生重大影响,因此我尝试替换它们。我进入我的 html 并复制 svg 代码,并将这些 svg 组件放入 svg 文件中。它们在我的 Photoshop 仿制品中以图像形式打开,所以我认为它们应该不错。
当我尝试使用它们将它们包含在我的页面中时
import FacebookIcon from '../images/svg/facebookF.svg'
import Email from '../images/svg/email.svg'
<FacebookIcon />
<Email />
Run Code Online (Sandbox Code Playgroud)
并将以下内容添加到我的gatsby-config.js(安装后gatsby-plugin-react-svg
{
resolve: 'gatsby-plugin-react-svg',
options: {
rule: {
include: "/src/images/svg/"
}
}
}
Run Code Online (Sandbox Code Playgroud)
我收到错误
InvalidCharacterError: String contains an invalid character
Run Code Online (Sandbox Code Playgroud)
这个错误发生在我的 MRE 中,您可以在此Github repo上查看。在我的实际程序中,svgs 没有显示,但网页加载正常。