svgrwebpack引入的报错

svgr/webpack引入的报错

背景:

​ 新的项目的首页是一整张svg的图,上面有各种入口,需要点击不同的入口进入不同的课程。React有一种方法是把盖svg引入成组件,继而可以捕获到相应的点击事件。

​ 我参考网上的方式,用了@svgr/webpack的包,发现了如下的报错。

​ 参考连接:React 代码 Import Svg as ReactComponent 失败 - muamaker - 博客园 (cnblogs.com)

Module build failed (from ./node_modules/@svgr/webpack/lib/index.js): Error: Expected > (0:538). If this is valid SVG, it's probably a bug in svg-parser. Please raise an issue at https://github.com/Rich-Harris/svg-parser/issues – thanks!

image-20220811134016869

解决:

​ 其实这是这个库本身的一个bug,在webpack5的版本就会引起该报错,之前有项目是webpack4的版本则不会引发该问题。这个库上次维护已经是两年前了,笔者真的不建议再使用该库了…

Issues · Rich-Harris/svg-parser · GitHub

​ 后来解决的方法将原来的库替换成svg-inline-loader。配置需要做些如下的更改。

{
	test: /\.svg$/,
	loader: 'svg-inline-loader',
},

image-20220811140525360

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值