【React】项目中组件化使用svg格式的图片

news/2024/11/24 8:31:13/

光の剧场

今日份主演:(👧美工,👶我,👨前辈)

👧:我给你提供了几种不同格式的图片,你看你怎么方便怎么用

我赶紧一翻,哇哦,有png格式的图片,那还不简单?SVG?没用过,管他呢!

👶:嗯嗯,好的

于是我将png图片复制粘贴到文件夹下,引入,修改宽高,ok,大功告成,看着和原型如出一辙的页面,我喜滋滋的提交了代码

🕟下午…

👨:你做的页面?

👶 我:对啊

心想着他肯定是来夸我的

👨:你这里是不是少了几个图标?

我又在自己本地查看了一下页面,发现并没有缺少图标

👶:没有啊

👨:你在测试环境上看一下

我又切到了测试环境,果然没有我引入的那几个png图标

前辈看着我一脸疑惑,唉,果真是应届生

👨:我们提交到测试环境上的代码是要通过jenkins打包的,而且我们的icons文件夹不用提交,你这样直接指向它本地的icons路径,在测试环境上是找不到的,现在咱们有了美工,我都不用png格式的引入了,来,我教你怎么用svg吧


正式解答

第一步:下载svg格式的图片(确保你已npm install antd)

在这里插入图片描述

第二步:使用浏览器打开该svg图片,可以在页面上看到该图标

在这里插入图片描述

第三步:右击选择“View page source”,看到该svg文件的源码,复制这些源代码

在这里插入图片描述

第四步:新建一个js文件,按照下面的模板

❗❗❗:在代码中要删去下图所示标红的一段,因为不支持这个格式,如果不删掉的话,会报错
在这里插入图片描述

import Icon from '@ant-design/icons';
import React from 'react';
const 组件名= () => svg源代码
export default (props) => <Icon component={组件名} {...props} />;

举个例子

import Icon from '@ant-design/icons';
import React from 'react';
const qywxSvg = () => <svg width="30px" height="30px" viewBox="0 0 30 30" version="1.1" xmlns="http://www.w3.org/2000/svg"><title>icon_qywx</title>        
</svg>
export default (props) => <Icon component={qywxSvg} {...props} />;

第五步:在页面中引用

❗❗❗:React组件的首字母必须大写,马赛克的地方是JS文件的路径
在这里插入图片描述
在这里插入图片描述


http://www.ppmy.cn/news/778237.html

相关文章

怎么用class引入svg_利用AI工具,将图片格式转换为SVG格式操作

这几天&#xff0c;有读者留言&#xff0c;问怎么把图片转换为SVG格式&#xff0c;网上有在线转换的工具&#xff0c;百度搜索下&#xff0c;就能找到好几个网站提供这样的服务&#xff0c;简单的图片可以&#xff0c;有些复杂的图片输出后有点问题&#xff0c;这个需要大家自行…

解决svg格式的图片移入PPT中,图片出现viewer does not support svg 1.1问题

问题复现&#xff1a;当把下载好的svg图片&#xff0c;移入ppt中&#xff0c;图片中会显示viewer does not support svg 1.1文字提示&#xff0c;使得图片看上去不美观。 解决方式&#xff1a; 找到图片文件对应目录&#xff0c;复制一个图片副本&#xff0c;并用文本编辑器打开…

SVG文件使用操作

SVG文件使用操作 制作方法 使用 illustrator 生成svg文件&#xff0c;选择”文件”—"导出”存储为svg格式&#xff0c;弹出svg选项框&#xff0c;生成svg代码。 动画格式 2.1 三种动画状态 svg文件一般有三种动画状态&#xff0c;包括静止状态、告警状态、运转状态。有…

SVG格式编辑工具

svg的简介&#xff1a; --SVG 是可伸缩的矢量图形&#xff0c;在浏览器中改变尺寸&#xff0c;其图形质量不会有所损失 --相比其它位图&#xff0c;SVG图像文件更小&#xff0c;可压缩性更强 --SVG 可以被记事本等阅读器、搜索引擎访问 --SVG 图像中的文本是可选的&#xf…

android支持svg格式图片么,Android Studio2.0中使用SVG图片格式

SVG格式, 适应屏幕, 图片较小, 还有很多优点 . 本文讲解如何使用SVG格式. SVG: Scalable Vector Graphics, 可缩放矢量图形. IRI: Internationalized Resource Identifiers, 国际化资源标识符. 下载SVG格式的图片. 新建项目, 空白项目显示图片. Android Studio 2.0路径: File -…

制作svg格式矢量图

1.PPT绘图后保存为.svg格式 该法可以解决大部分画矢量图的需求 2.Adobe Acrobat 当想要制作自定义大小的矢量图时&#xff0c;法1显然不太方便了。接下来介绍制作自定义大小的矢量图方法&#xff1a; 2.1先在ppt上绘制出图像&#xff0c;并将其以PDF的格式导出。 2.2 在Ad…

AI批量导出SVG格式图片

软件版本&#xff1a;Illustratorlcc2015 解决直接用ai批量导出时&#xff0c;勾选画板得到空白svg图像问题。 解决方法&#xff1a; 先用画板导出为EPS格式一个一个的大小&#xff0c;每一个可以使用画板&#xff0c; 然后在AI打开所有的EPS文件 菜单栏&#xff1a;文件&am…

如何批量将 Word 文档转为 Svg 格式

概要&#xff1a;SVG是一种用XML定义的语言&#xff0c;用来描述二维矢量及矢量/栅格图形。它相比目前网络流行的 JPEG 和 PNG 有比较多的优势&#xff0c;比如可以任意放大图形显示&#xff0c;但不会降低图像质量&#xff0c;并且 SVG 文件一般要比 JPEG 和 PNG 格式的文件都…