svg-sprite-loader ( svg-icon) 使用
svg-sprite-loader 可以多个svg图标合并. 使用时只需根据合并的symbol的id即可.


npm install -D svg-sprite-loader
2. 更改vue.config.js webpack的配置
chainWebpack: config => {
        config.module.rules.delete('svg'); //重点:删除默认配置中处理svg,
        config.module
            .rule('svg-sprite-loader')
            .test(/\.svg$/)
            .include.add(resolve('src/assets/icons/svg')) //处理svg目录
            .end()
            .use('svg-sprite-loader')
            .loader('svg-sprite-loader')
            .options({
                symbolId: 'icon-[name]',
            });
    }
由于更改了svg的处理方式, 如果不是所有svg都处理成svgicon还要添加 svg的处理
configureWebpack: {
        module: {
            rules: [
                {
                    test: /\.(svg)(\?.*)?$/,
                    exclude: [resolve('src/assets/icons')],
                    use: [
                        {
                            loader: 'file-loader',
                            options: {
                                name: 'img/[name].[hash:8].[ext]',
                            },
                        },
                    ],
                },
            ],
        },
    }
* 注意以上路径的区别.
3. 一个一个导入svg太麻烦. 没错有办法.
import Vue from 'vue';
import svgIcon from './svgIcon.vue';
Vue.component(svgIcon.name, svgIcon); const req = require.context('@/assets/icons', true, /\.svg$/);
const requireAll = requireContext => requireContext.keys().map(name => requireContext(name));
requireAll(req);
导入指定目录下的所有svg文件.
4. 当然也可以注册一个全局组件 ,使用时更加简洁.
<template>
<svg class="svg-icon" aria-hidden="true" v-on="$listeners">
<use :xlink:href="name" />
</svg>
</template>
svg-sprite-loader ( svg-icon) 使用的更多相关文章
- SVG Sprite 使用Symbol元素制作ICON
		介绍 SVG是一种全新的使用方式,应该说这才是未来的主流,也是平台目前推荐的用法.之前写过两篇关于CSS icon在页面显示的博客,后来了解到现在大多数前端团队和项目都在使用SVG Sprite这种方 ... 
- 在vue中使用svg sprite
		概述 这几天研究了一下在vue中使用svg sprite,有些心得,记录下来,供以后开发时参考,相信对其它人也有用. 在vue中导入svg 在vue中导入svg的方法有很多种,比如在img标签的src ... 
- 自制按钮图标的两种方法: image sprite和svg字体文件
		用image sprite和svg字体文件这两种方法,都能够极大地减少小图形文件的数量, 从而减少服务器请求和带宽需求.提高网页的响应速度. 一.建立SVG字体文件 iconmoon 是一个在线工具, ... 
- SVG & Sprite & symbol & use
		SVG & Sprite & symbol & use https://www.zhangxinxu.com/sp/svgo/ https://www.zhangxinxu.c ... 
- SVG Sprite 入门(SVG图标解决方案)
		关于浏览器图标解决方案,一直就有很多 CSS Sprite,Icon Font,CSS Icon以及SVG.相对而言svg矢量图标以及支持浏览器自身解析的优点,很多团队都已经在使用了.这篇文章主要说明 ... 
- REM+SVG Sprite,web app案例
		REM+SVG Sprite,构建新时代web app <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN&quo ... 
- [SVG] Combine Multiple SVGs into an SVG Sprite
		In this lesson, we’ll explore the process of combining all of your SVG icons into one SVG sprite, to ... 
- SVG vs Image, SVG vs Iconfont
		这可能是个别人写过很多次的话题,但貌似由于兼容性的原因?图标的显示还是用着 Iconfont 或者 CSS Sprite 的形式?希望通过自己新瓶装旧酒的方式能重新引导一下问题. SVG vs Ima ... 
- 【翻译svg教程 】svg 的坐标系统
		http://tutorials.jenkov.com/svg/svg-coordinate-system.html svg的坐标系统(和大多数计算机绘图的坐标系统)和数学中绘图系统有点不一样 数学/ ... 
- SVG Drawing Animation - SVG 绘制动画
		一个小实验,探索 SVG 线图动画的使用情况,以前沿的展示形式呈现图形或网站元素的外观,模拟它们的加载.SVG 真的很强大,有许多创造性和可能性,使用 SVG 可以制作各种有趣的网站交互效果.今天这篇 ... 
随机推荐
- ISO/IEC 9899:2011 条款6.2.7——兼容类型与组合类型
			6.2.7 兼容类型与组合类型 1.两个类型具有兼容类型,如果它们的类型是相同的.用于判定两个类型是否兼容的其它规则在6.7.2关于类型说明符中,6.7.3关于类型说明符中,6.7.6关于声明符中描述 ... 
- python中关于shutdown 和closesocket的彻底理解!
			关于shutdown 和closesocket的彻底理解! shutdown 和closesocket 来,咱们彻底的来讨论一下这个shutdown 和closesocket 从函数调用上来分析(ms ... 
- 重新认识Java 8的HashMap
			[转自]美团技术博客 HashMap是Java程序员使用频率最高的用于映射(键值对)处理的数据类型.随着JDK(Java Developmet Kit)版本的更新,JDK1.8对HashMap底层的实 ... 
- PAT 甲级 1031 Hello World for U (20 分)(一开始没看懂题意)
			1031 Hello World for U (20 分) Given any string of N (≥) characters, you are asked to form the char ... 
- matlab学习——02整数规划(蒙特卡洛法,指派问题,混合整数规划)
			02整数规划 蒙特卡洛法(随机取样法) 编写文件mengte.m,目标函数f和约束向量g function[f,g]=mengte(x); f=x(1)^2+x(2)^2+3*x(3)^2+4*x(4 ... 
- idea中Lombok的Buider构造器模式,getter/setter正确使用方法
			public class ApiUser implements Serializable { private Long id; /*** * 用户类型:single,org(organization) ... 
- Delphi中动态加载TreeView信息
			unit Unit3; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms ... 
- Flask 应用如何部署
			1. Why Flask+Gunicorn+Nginx Flask+Gunicorn+Nginx是最常用的Flask部署方案,大家深究过为何用这样的搭配么? 1.1 Why? Flask 是一个web ... 
- 未能加载文件或程序集“System.Web.Extensions, Version=1.0.61025.0, Culture=neutral
			近日将电脑重装了一下,刚刚装上vs2005后打开以前的一个项目,居然出现了下面的错误: 未能加载文件或程序集“System.Web.Extensions.Design, Version=1.0.610 ... 
- iOS使用UIImageView展现网络图片(转载)
			在iOS开发过程中,经常会遇到使用UIImageView展现来自网络的图片的情况,最简单的做法如下: [cpp] view plaincopy - (void)viewDidLoad { [sup ... 
