Webpack实战加载SVG的方法


Posted in Javascript onDecember 26, 2017

SVG 作为矢量图的一种标准格式,已经得到了各大浏览器的支持,它也成为了 Web 中矢量图的代名词。 在网页中采用 SVG 代替位图有如下好处:

  1. SVG 相对于位图更清晰,在任意缩放的情况下后不会破坏图形的清晰度,SVG 能方便地解决高分辨率屏幕下图像显示不清楚的问题。
  2. 在图形线条比较简单的情况下,SVG 文件的大小要小于位图,在扁平化 UI 流行的今天,多数情况下 SVG 会更小。
  3. 图形相同的 SVG 比对应的高清图有更好的渲染性能。
  4. SVG 采用和 HTML 一致的 XML 语法描述,灵活性很高。

画图工具能导出一个个 .svg 文件,SVG 的导入方法和图片类似,既可以像下面这样在 CSS 中直接使用:

body {
 background-image: url(./svgs/activity.svg);
}

也可以在 HTML 中使用:

<img src="./svgs/activity.svg"/>

也就是说可以直接把 SVG 文件当成一张图片来使用,方法和使用图片时完全一样。 所以在3-19 加载图片 中介绍的两种方法 使用 file-loader 和 使用 url-loader 对 SVG 来说同样有效,只需要把 Loader test 配置中的文件后缀改成 .svg ,代码如下:

module.exports = {
 module: {
  rules: [
   {
    test: /\.svg/,
    use: ['file-loader']
   }
  ]
 },
};

由于 SVG 是文本格式的文件,除了以上两种方法外还有其它方法,下面来一一说明。

使用 raw-loader

使用 svg-inline-loader

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
[转]JS宝典学习笔记
Feb 07 Javascript
JS获取html对象的几种方式介绍
Dec 05 Javascript
js中window.open打开一个新的页面
Aug 10 Javascript
JavaScript声明变量时为什么要加var关键字
Sep 29 Javascript
jQuery实现选项卡切换效果简单演示
Dec 09 Javascript
jQuery加载及解析XML文件的方法实例分析
Jan 22 Javascript
js实现带简单弹性运动的导航条
Feb 22 Javascript
JavaScript数据结构之广义表的定义与表示方法详解
Apr 12 Javascript
简单实现js点击展开二级菜单功能
May 16 Javascript
微信小程序实现通过双向滑动缩放图片大小的方法
Dec 30 Javascript
解决vue打包后vendor.js文件过大问题
Jul 03 Javascript
javascript实现移动端轮播图
Dec 09 Javascript
vue学习教程之带你一步步详细解析vue-cli
Dec 26 #Javascript
基于vue-cli配置lib-flexible + rem实现移动端自适应
Dec 26 #Javascript
基于 flexible 的 Vue 组件:Toast -- 显示框效果
Dec 26 #Javascript
细说webpack源码之compile流程-rules参数处理技巧(2)
Dec 26 #Javascript
AngularJS实现的根据数量与单价计算总价功能示例
Dec 26 #Javascript
细说webpack源码之compile流程-rules参数处理技巧(1)
Dec 26 #Javascript
Bootstrap 模态框多次显示后台提交多次BUG的解决方法
Dec 26 #Javascript
You might like
基于PHP读取csv文件内容的详解
2013/06/18 PHP
thinkphp中memcache的用法实例
2014/11/29 PHP
PHP浮点比较大小的方法
2016/02/14 PHP
EarthLiveSharp中cloudinary的CDN图片缓存自动清理python脚本
2017/04/04 PHP
php 人员权限管理(RBAC)实例(推荐)
2017/05/24 PHP
php从数据库中读取特定的行(实例)
2017/06/02 PHP
php app支付宝回调(异步通知)详解
2018/07/25 PHP
用Javascript实现UTF8编码转换成gb2312编码
2006/12/22 Javascript
JScript的条件编译
2007/05/29 Javascript
Add Formatted Text to a Word Document
2007/06/15 Javascript
JavaScript 乱码问题
2009/08/06 Javascript
PPK 谈 JavaScript 的 this 关键字 [翻译]
2009/09/29 Javascript
微信JS接口汇总及使用详解
2015/01/09 Javascript
微信+angularJS的SPA应用中用router进行页面跳转,jssdk校验失败问题解决
2016/09/09 Javascript
Node.js编写CLI的实例详解
2017/05/17 Javascript
Vue-cli3项目配置Vue.config.js实战记录
2018/07/29 Javascript
H5+C3+JS实现五子棋游戏(AI篇)
2020/05/28 Javascript
微信小程序select下拉框实现效果
2019/05/15 Javascript
微信小程序返回上一页传参并刷新过程解析
2019/12/13 Javascript
基于better-scroll 实现歌词联动功能的代码
2020/05/07 Javascript
[02:26]2018DOTA2亚洲邀请赛赛前采访-Newbee篇
2018/04/03 DOTA
[51:15]完美世界DOTA2联赛PWL S2 PXG vs Magma 第一场 11.21
2020/11/24 DOTA
Python映射拆分操作符用法实例
2015/05/19 Python
Python搭建代理IP池实现存储IP的方法
2019/10/27 Python
python 将dicom图片转换成jpg图片的实例
2020/01/13 Python
Python json模块与jsonpath模块区别详解
2020/03/05 Python
tensorflow pb to tflite 精度下降详解
2020/05/25 Python
让IE支持HTML5的方法
2012/12/11 HTML / CSS
美国潜水装备、水肺潜水和浮潜设备商店:Leisure Pro
2018/08/08 全球购物
转预备党员政审材料
2014/02/06 职场文书
奉献演讲稿范文
2014/05/21 职场文书
企业计划生育责任书
2015/05/09 职场文书
第二次离婚起诉书
2015/05/18 职场文书
积极心理学课程心得体会
2016/01/22 职场文书
《岳阳楼记》原文、译文赏析
2019/09/10 职场文书
浅谈@Value和@Bean的执行顺序问题
2021/06/16 Java/Android