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

 <svg class="svg-icon" aria-hidden="true" v-on="$listeners">
        <use xlink:href="symbol的id" />
    </svg>
 
// 项目使用Vue CLI 搭建
1. 首先 svg-sprite-loader

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>
 

最新文章

  1. 转:ecshop商品分类页获取相册列表方法
  2. js DOM的几个常用方法
  3. js的时间操作方法
  4. 欧拉工程第67题:Maximum path sum II
  5. 通过SQL Server 2008 访问MySQL(转)
  6. C++返回引用的函数
  7. JAva Collections类方法详解
  8. Highways
  9. C++新建Dialog程序
  10. Android的Databinding-资源绑定
  11. linux下构建MysqlCluster集群,NDB搜索引擎
  12. 学习笔记之Bokeh
  13. js中两种for循环的使用
  14. SPSS学习系列之SPSS Modeler的功能特性(图文详解)
  15. Windows 64位系统下安装JAVA环境
  16. ReSharper+Devexpress 删除光标之后的换行
  17. Reading RxJava Marble Diagrams
  18. chromium源代码下载(Win7x64+VS2013sp2, 39.0.2132.2)
  19. [thinkphp] ajaxReturn案例
  20. SM3算法

热门文章

  1. Ionic4.x 新增底部 tabs 页面
  2. 23Flutter FloatingActionButton实现类似闲鱼App底部导航凸起按钮:
  3. (十)java虚拟机性能监控工具
  4. Python 练习题总结(待续)
  5. C#RSA加密解密(对接PHP)
  6. Bilibili用户需求分析报告
  7. eNSP——静态路由的基本配置
  8. QT信号槽连接
  9. SpringBoot中使用 RabbitMQ -测试
  10. SQL SERVER 实现多行转多列