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)

在这里面操作即可

相关推荐
随风一样自由8 小时前
【前端独角兽】刚进入前端领域的前端开发用jQuery还是Vue3?
前端·javascript·vue3·jquery
IMPYLH8 小时前
HTML 的 <data> 元素
前端·html
YHHLAI9 小时前
[特殊字符] 面试中的 Promise —— 从入门到精通
前端·javascript·面试
kyriewen10 小时前
我扒了 GPT-5.6 的全部编程跑分——有一项 OpenAI 没敢放出来
前端·gpt·ai编程
前端H11 小时前
微前端 v3 架构升级:从加载隔离到状态协同
前端·架构·状态模式
陆枫Larry12 小时前
小程序包体积优化:用 SVG 图片替换 iconfont,并保留 CSS 控色能力
前端
环境栈笔记13 小时前
多账号浏览器选型检查清单:Profile、权限、Session 和任务日志怎么评估
前端·人工智能·后端·自动化
前端炒粉14 小时前
手写promise
java·前端·javascript
LaughingZhu14 小时前
智能体经典范式构建:ReAct、Plan-and-Solve 与 Reflection
前端·react.js·前端框架
jsonbro14 小时前
手把手带你实现发布订阅模式
前端·vue.js·设计模式