我使用react+vite+ts创建了一个项目,我想封装一个Svgicon组件不知道怎么做,我在src下创建了一个icons文件夹,里面存放我从阿里矢量图标库上下载的svg
<Svgicon name="xxx">
我想通过传入一个name属性就能展示对应名字的svg
不知道你这个问题是否已经解决, 如果还没有解决的话:我可以帮助你封装Svgicon组件。首先,你需要安装React和react-dom库。
然后,你可以按照以下步骤进行封装:
在icons文件夹中放置从阿里矢量图标库下载的SVG图标。确保每个图标都保存为单独的SVG文件。
在src目录下创建一个名为Svgicon.tsx的文件,用于编写Svgicon组件的代码。这个文件将包含Svgicon组件的所有逻辑和样式。
import React from 'react';
interface SvgiconProps {
name: string;
}
const Svgicon: React.FC<SvgiconProps> = ({ name }) => {
const svgPath = `./icons/${name}.svg`;
return (
<div>
<img src={svgPath} alt={name} />
</div>
);
};
export default Svgicon;
import React from 'react';
import Svgicon from './Svgicon';
const App: React.FC = () => {
return (
<div>
<Svgicon name="xxx" />
</div>
);
};
export default App;
确保替换name
属性的值为你想要展示的实际SVG图标的文件名,不要包括文件后缀。
name
属性对应的SVG图标。这就是如何在React项目中封装一个Svgicon组件的步骤。请注意,这只是一个简单的示例,你可以根据自己的需求对Svgicon组件进行进一步的扩展和样式设计。