全网最详细的vue2引入svg详细步骤
2023-12-25 14:50:55
一、文章引导
二、博主简介
🌏博客首页: 水香木鱼
📑文章摘要:svg
?自定义配置svg
💌春波寄语:故木秀于林,风必摧之;堆出于岸,流必湍之;行高于人,众必非之。
三、文章内容
本期春波petal为大家带来的是,【 ``】
(1)、安装依赖
注意下载如下版本号??
npm install svg-sprite-loader@6.0.11 --save
(2)、在src下创建icons目录
icons目录结构如下:
创建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);
(3)、封装SvgIcon组件
<template>
<svg className="svg-icon" aria-hidden="true">
<use :xlink:href="iconName" />
</svg>
</template>
<style>
.svg-icon {
width: 1.5em;
height: 1.5em;
}
</style>
<script>
export default {
props: {
iconClass: {
type: String,
required: true,
},
},
computed: {
iconName() {
return `#icon-${this.iconClass}`;
},
},
};
</script>
(4)、全局引用main.js
import "./icons";//自定义图标
(5)、vue.config.js-配置
function resolve(dir) {
return path.join(__dirname, dir);
}
module.exports = {
chainWebpack: (config) => {
// 配置 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();
},
}
(6)、使用方式
<svg-icon icon-class="404_2"></svg-icon>
四、程序语录
本篇博客文章模板唯一版权归属?春波petal
文章来源:https://blog.csdn.net/weixin_48337566/article/details/135191875
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!