批量解决SVG不能改色问题

330 阅读1分钟
  • 项目中我在引入svg图标时发现,设置颜色后,有一部分图标还是显示原始的颜色。
  • 这是因为这部分 svg 图标带有 fill 属性的原因无法修改颜色
  • 但是我发现去掉SVG图标代码中的 fill 属性后,也能正常设置颜色,但是 svg 文件数量多时重复操作太多
  • 于是有了一下解决办法

解决办法1

  • 项目图表中选择批量操作 image.png
  • 全选,批量去色 image.png

解决办法2

  • 首先安装 svgo-loader
yarn add --dev svgo-loader
  • 在 vue.config.js 文件中,config.module 代码后加上 svgo-loader 代码( svg 后的 o 是“优化”英文首字母)
.use('svgo-loader').loader('svgo-loader')
.tap(options =>({...options,plugins:[{removeAttrs:{attrs:'fill'}}]}))

image.png