使用vue组件加载SVG图片步骤


使用vue加载SVG图片,有两种方法,一种是雪花loader,一种是vue-svg-loader(官网推荐)。在自己的项目中,本次使用vue-svg-loader加载svg图片,并且对图片进行属性修改。操作步骤:

 

1:下载svg-vue-loader  ,并安装

npm i -D vue-svg-loader  vue-template-compiler

下载babel-loader,并安装

npm install -D babel-loader @babel/core @babel/preset-env webpack

 

2:本人使用vuecli3脚手架,在vue.config.js配置如下

module.exports = {
chainwebpack: (config) => {
const svgRule = config.module.rule('svg');

svgRule.uses.clear();

svgRule
.use('babel-loader')
.loader('babel-loader')
.end()
.use('vue-svg-loader')
.loader('vue-svg-loader');
},
};

 

3. 在babel.config.js文件中修改为:
module.exports = { presets: [ '@vue/app' ], sourceType:'unambiguous' } 

 

  4,这样就可以加载svg图片了

<template> <nav> <a href="https://github.com/vuejs/vue"> <VueLogo /> Vue </a> <a href="https://github.com/svg/svgo"> <SVGOLogo /> SVGO </a> <a href="https://github.com/webpack/webpack"> <WebpackLogo /> webpack </a> </nav> </template> <script> import VueLogo from './public/vue.svg'; import SVGOLogo from './public/svgo.svg'; import WebpackLogo from './public/webpack.svg'; export default { name: 'Example', components: { VueLogo, SVGOLogo, WebpackLogo, }, }; </script>

注意,如果在配置vue.config.js中的vue-svg-loader时,不去配置babel,只兼容谷歌和火狐,而IE,Edge不兼容,会报错,原因是IE,Edge使用ES5语法,ES6语法浏览器不认识,所以必须使用Babel进行转码,将ES6语法翻译成ES5,这样就可以兼容了

豌豆资源搜索网站https://55wd.com 电脑刺绣绣花厂 ttp://www.szhdn.com


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM