直接粘贴 SVG 到代码里,常见问题是属性混乱、颜色不可控。按这份指南处理后,组件会更规范,也更好维护。
1)先标准化 SVG 输入
- 先清理多余 group、metadata、内联样式。
- 保留正确 viewBox,保证缩放可预测。
- 重命名 ID 与 mask,避免多图标同页冲突。
2)生成类型安全组件
- 基于 SVG props 扩展 TypeScript 类型,提升补全与约束。
- 提供默认宽高并允许外部覆盖。
- 将固定颜色替换为 currentColor,以适配主题与上下文颜色。
3)接入设计系统
- 统一目录和导出方式,降低使用成本。
- 在 CI 中加 lint 或测试,阻止非法属性进入主干。
- 补充尺寸与 aria 示例,提升组件可用性。