就是我们页面上看到的那些菜单上面的小图标
如何在一个新项目中使用svg-icon组件呢? 下面来说一下步骤
使用步骤:
1.安装依赖:
npm i svg-sprite-loader@4.1.3
2.配置 在 vue.config.js 中
配置1
const path = require('path')
function resolve (dir) {
return path.join(__dirname, dir)
}
配置2
{
// 省略其他...
chainWebpack (config) {
// set svg-sprite-loader
config.module
.rule('svg')
.exclude.add(resolve('src/icons'))
.end()
config.module
.rule('icons')
.test(/\.svg$/)
.include.add(resolve('src/icons'))
.end()
.use('svg-sprite-loader')
.loader('svg-sprite-loader')
.options({
symbolId: 'icon-[name]'
})
.end()
}
}
3.复制以及创建文件
(1) src/icons 把icons文件夹复制粘贴在src下面
说明一下: icons/svg icons下面的svg 是保存图标的
icons/index.js icons 下面的index.js 值注册全局组件的
(2)components/SvgIcon/index.vue 把整个SvgIcon文件夹都放在
components下面
(3) validate.js
方式1: utils/validate.js 把validate.js这个js文件放在utile下面
方式2: 如果不想把整个文件夹都放进来,那么就可以把有一段校验规则放在
SvgIcon/index.vue下面
![image.png](https://cdn.nlark.com/yuque/0/2021/png/21762447/1624426914921-0341dda6-62af-40bb-bf8a-03362b89b9e9.png#clientId=u66378cc5-3985-4&from=paste&height=82&id=u1cc5bb56&margin=%5Bobject%20Object%5D&name=image.png&originHeight=82&originWidth=384&originalType=binary&ratio=1&size=6486&status=done&style=none&taskId=ue31d79ce-df4a-4d0a-ad12-1a2cb1b5c42&width=384)
(4) 在main.js里面引入
import '@/icons'
(5) 使用
使用格式: <svg-icon icon-class="文件名"/> 这里的文件名就是src/icons/svg下的文件名