【发布时间】:2020-10-14 15:52:45
【问题描述】:
我是 React 的新手,我正在尝试将 svg 图像添加到我的组件并为其每个路径添加动态样式。但是,我在这样做时遇到了问题。我正在使用 create-react-app
我将我的 svg 作为 React 组件导入
import { ReactComponent as SVGimg} from './img/svg-img.svg';
并在我的渲染中使用它。我希望通过使用我在纯 HTML/CSS/JS 上工作的 for...of 循环为所有路径添加样式
render() {
const svgImg = document.querySelectorAll('svg path')
for (let path of svgImg) {
path.classList.add('some-class');
}
return(
<div>
<SVGimg/>
</div>
);
}
我还想提一下,SVG 有很多路径
【问题讨论】:
-
您的意思是要添加随机样式,以便在每次呈现页面后更改?或者只是在加载后添加样式?无论哪种方式,我认为类名和 css 都是要走的路。我想知道您是否想要一个迭代器,例如 pathClass1、pathClass2 等?
-
我想在每个路径加载后添加一个延迟。我已经有了 css 类,但我不知道如何从 svg 中获取路径。下面的答案有效:D
标签: javascript reactjs svg