You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在React中导入并使用存为JS文件的SVG组件?

React 中导入使用封装好的SVG组件的方法

首先将你给出的SVG组件代码保存为独立的JS文件,比如命名为 CustomIcon.js,可自行调整文件名,路径可根据你的项目结构规划存放,比如放在src/components/目录下。

  • 第一步:在需要使用该SVG的React组件顶部导入组件
    注意导入路径为CustomIcon.js相对于当前组件文件的相对路径,示例:
// 示例路径,需匹配你实际的文件存放位置
import CustomIcon from './components/CustomIcon'
  • 第二步:在组件的JSX结构中直接调用即可
// 基础用法,默认使用组件内置的尺寸、类名等配置
<CustomIcon />

// 自定义属性用法,可覆盖原有默认配置
<CustomIcon className="menu-icon" width="24" height="24" data-testid="custom-icon" />

可选优化:让SVG组件支持灵活透传属性

如果需要让组件支持动态接收任意SVG属性,你可以调整原SVG组件的代码,实现属性透传:

import React from "react";

export default (props) => (
  <svg
    className="xxx"
    data-testid="ggg"
    width="20"
    height="20"
    viewBox="0 0 20 20"
    fill="none"
    xmlns="http://www.w3.org/2000/svg"
    // 透传所有外部传入的属性,优先级高于上方的默认属性
    {...props}
  >
    <path d="xxxx" />
  </svg>
);

调整后外部传入的className、width、fill等属性都会自动覆盖默认值,使用更灵活。

内容的提问来源于stack exchange,提问作者Alex Zhang

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.07 09:00:00