react-inlinesvg如何动态的修改颜色SVG

这里我想修改颜色

css 复制代码
 .icon {
    fill: #ff4d4f; /* 修改填充颜色 */
    color: red; /* 此时SVG的fill会继承color的值 */
  }
javascript 复制代码
import styles from './index.module.scss'
import SVG from 'react-inlinesvg'
import classNames from 'classnames'

const Header = () => {
  const siderbarArr = [
    {
      name: '海报模版',
      icon: 'https://s2.ssl.qhres2.com/static/0f9e180526acbc8a.svg',
    },
    {
      name: '创建设计',
      icon: 'https://s2.ssl.qhres2.com/static/0f9e180526acbc8a.svg',
    },
    {
      name: 'line',
    },
    {
      name: '我的资源',
      icon: 'https://s2.ssl.qhres2.com/static/0f9e180526acbc8a.svg',
    },
  ]
  return (
    <div className={styles.main}>
      {siderbarArr.map(item =>
        item.name !== 'line' ? (
          <div className={classNames(styles.item, styles.active)}>
            <SVG className={styles.icon} src={item.icon || ''} />
            {item.name}
          </div>
        ) : (
          <div className={styles.line}></div>
        )
      )}
    </div>
  )
}

export default Header

这样都是无效的

如何解决该问题呢?

javascript 复制代码
    filter: invert(14%) sepia(97%) saturate(7483%) hue-rotate(0deg) brightness(91%) contrast(119%);

使用filter颜色滤镜

如何快速生成任意颜色的滤镜值

你可以使用这个在线工具生成对应颜色的滤镜代码:
CSS Filter Generator (codepen.io)

在这里面操作即可

相关推荐
Jinuss10 分钟前
源码分析之React中updateContainerImpl方法更新容器
前端·react.js·前端框架
Mr Xu_32 分钟前
Vue + Element Plus 实现前端导出 Excel 功能详解
前端·javascript·vue.js
仰泳之鹅1 小时前
【杂谈】使用Edge浏览器下载文件显示“Microsoft Defender SmartScreen 已阻止此不安全文件”的解决方法
前端·edge
万邦科技Lafite1 小时前
小红书评论数据一键获取,item_reviewAPI接口讲解
大数据·前端·数据库·chrome·电商开放平台
meng半颗糖2 小时前
vue3+tpescript 点击按钮跳转新页面直接通过链接预览word
前端·vue.js·word
击败不可能2 小时前
vue做任务工具方法的实现
前端·javascript·vue.js
觉醒大王3 小时前
医学好投的普刊分享
前端·论文阅读·深度学习·学习·自然语言处理·学习方法
小二·3 小时前
Python Web 开发进阶实战:AI 编排引擎 —— 在 Flask + Vue 中构建低代码机器学习工作流平台
前端·人工智能·python
【赫兹威客】浩哥3 小时前
【赫兹威客】框架模板-前端bat脚本部署教程
前端·vue.js
sww_10263 小时前
智能问数系统(二):数据分析师Python
java·前端·python