一、安装svg-sprite-loader

npm install svg-sprite-loader --save

二、vue.config.js配置

chainWebpack: (config) => {// set svg-sprite-loaderconfig.module.rules.delete('svg'); // 重点:删除默认配置中处理svgconfig.module.rule('svg-sprite-loader').test(/\.svg$/).include.add(resolve('src/icons')) // 处理svg目录.end().use('svg-sprite-loader').loader('svg-sprite-loader').options({symbolId: 'icon-[name]',});}

三、新建SvgIcon组件(例如src/components/SvgIcon/index.vue)

<template><svg :class="svgClass" aria-hidden="true" v-on="$listeners"><use :xlink:href="iconName" /></svg>
</template><script>
export default {name: 'SvgIcon',props: {iconClass: {type: String,required: true},className: {type: String,default: ''}},computed: {iconName() {return `#icon-${this.iconClass}`},svgClass() {if (this.className) {return 'svg-icon ' + this.className} else {return 'svg-icon'}}}
}
</script><style scoped>
.svg-icon {width: 1em;height: 1em;vertical-align: -0.15em;fill: currentColor;overflow: hidden;
}
</style>

四、src新建icons文件夹,其下再新建index.js和svg文件夹(用于存放svg文件)

index.js文件代码如下

import Vue from 'vue'
import SvgIcon from '@/components/SvgIcon'// svg component// register globally
Vue.component('svg-icon', SvgIcon)const req = require.context('./svg', false, /\.svg$/)
const requireAll = requireContext => requireContext.keys().map(requireContext)
requireAll(req)

五、main.js里引入

六、使用

// 例如要显示eye.svg,写法如下。style和class都可以正常使用哦,改变svg的大小和icon用法一样,使用font-size。
<svg-icon icon-class="eye"></svg-icon>

svg-icon的使用(将svg转换为icon来使用)相关推荐

  1. 将图片转换成svg文件,自定义icon小图标,svg速成

    将图片转换成svg文件,自定义icon小图标,svg速成 一.svg是什么? 二.操作步骤 1.进入网站 2.将svg复制 3.引用svg文件 总结 一.svg是什么? SVG是一种图像文件格式,它的 ...

  2. 将图片转换为Icon

    下面是简单的将图片转换为Icon的方法,不过只支持16bit的颜色 Bitmap bm;   Stream strm = this.GetType().Assembly.GetManifestReso ...

  3. openlayers加载svg,如何在OpenLayers-3中将SVG图像用作地图标记?

    I am trying to create map "pin-drops" (ie. map markers) in OpenLayers-3 (OL3) using SVG im ...

  4. 苹果系统使用svg 动画_为什么要使用SVG图像:如何为SVG设置动画并使其快速闪电化

    苹果系统使用svg 动画 我们为什么要使用SVG? (Why Are We Using SVG?) The web development sector is growing at a rapid p ...

  5. svg添加html控件,SVG中嵌入HTML元素

    .clsfont{ border:1px solid #ccc;background:#fff;line-height:37px;color:#999;font-size:14px;text-alig ...

  6. css icon设置,CSS之字体图标 icon 的多种实现

    什么是icon?让我们先来看一个例子: 我们以简书为例子,图中看到的用圆圈起来的部分都是icon 这个时候你就想问了,这不就是几张图片么? 不,它不是图片,而是文字 什么??这怎么可能是文字,文字怎么 ...

  7. css svg什么意思,CSS之SVG

    一.学习链接 二.简介 [0]SVG 效果预览 image [1]SVG 的预定义形状 矩形 圆形 椭圆 线 折线 多边形 路径 [2]SVG 的通用标准语法 width:宽度: height:高度: ...

  8. html svg 颜色,通过css改变svg img的颜色

    需求如下图,hover的时候改变图标颜色,图标为引入的svg img 一般的解决办法有:1.字体图标改变css的color属性:2.js在hover事件中切换图片:3.老一点的方案是hover切换背景 ...

  9. svg glyph替代_使用SVG替代Imagemaps

    svg glyph替代 To create a clickable map on a website – for example, to create a world map for an compa ...

  10. 深入理解 SVG 系列(一) —— SVG 基础

    来源:https://segmentfault.com/a/1190000015652209 本系列文章分为三个部分: 第一部分是 SVG 基础. 主要讲 SVG 的一些基础知识,包括 SVG 基本元 ...

最新文章

  1. Android模拟器快捷键
  2. 由于Item category group customizing 缺失导致的BDOC error
  3. 【加解密学习笔记:第一天】操作系统基础知识
  4. python爬取小说项目概述_Python实战项目网络爬虫 之 爬取小说吧小说正文
  5. zend studio一些常用配置
  6. 数学建模4 拟合算法
  7. android按任意建关闭对话框,Android: 创建一个AlertDialog对话框,必须按确定或取消按钮才能关闭对话框,禁止按[返回键]或[搜索键]关闭...
  8. win10虚拟机搭建Hadoop集群(已完结)
  9. python字符串及基本运算
  10. Python + ElasticSearch:轻松玩转跨越千年的两百三十万条地震数据
  11. 吴声年度演讲全文:场景品牌,新商业的此时此刻
  12. 面试后要请你吃饭_面试官发出这5个信号,暗示你面试基本成功了,请做好准备!...
  13. “减糖”迫在眉睫,“代糖”或成最佳考量?
  14. 最近很火火火火的 GitHub 项目
  15. android直播音频开发准备
  16. Shell脚本之免交互
  17. Python Pexpect 模块使用说明
  18. win11找不到恢复环境怎么恢复出厂设置
  19. 面对困境最大的困难是走出第一步的勇气
  20. jQuery 实现音乐导航案例

热门文章

  1. xsstrike安装(仅供参考)
  2. 量子信息matlab,matlab在量子力学中的应用.PDF
  3. [230506] 2021年托福阅读真题第6篇|Water and Life on Mars|15:30~16:30|16:30~19:19
  4. Windows文件夹用“命令行窗口”打开
  5. 今天14:00 | NeurIPS 专场三 青年科学家专场
  6. log4j安全漏洞fix--快速答疑处理篇。
  7. java中的数据解析是_Java从网络中请求获取JSon数据以及解析JSON数据----(自创,请注明)...
  8. Ubuntu:一些普通软件的安装与卸载
  9. html一条竖线写法
  10. 天荒地老修仙功-第七部:Dubbo基本使用与原理详解