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 相关文章推荐
javascript的console.log()用法小结
May 31 Javascript
jQuery实现Flash效果上下翻动的中英文导航菜单代码
Sep 22 Javascript
Node.js程序中的本地文件操作用法小结
Mar 06 Javascript
微信小程序 五星评价功能的实现
Mar 09 Javascript
js实现拖拽上传图片功能
Aug 01 Javascript
AngularJs每天学习之总体介绍
Aug 07 Javascript
浅谈sass在vue注意的地方
Aug 10 Javascript
详解Vuex中mapState的具体用法
Sep 28 Javascript
使用FormData实现上传多个文件
Dec 04 Javascript
实例分析JS中的相等性判断===、 ==和Object.is()
Nov 17 Javascript
在vue中配置不同的代理同时访问不同的后台操作
Sep 11 Javascript
js实现自定义滚动条的示例
Oct 27 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小教程之实现双向链表
2014/06/12 PHP
PHP临时文件的安全性分析
2014/07/04 PHP
PHP错误Allowed memory size of 67108864 bytes exhausted的3种解决办法
2014/07/28 PHP
javascript 防止刷新,后退,关闭
2010/08/07 Javascript
jquery固定底网站底部菜单效果
2013/08/13 Javascript
基于jquery实现左右按钮点击的图片切换效果
2021/01/27 Javascript
JS字符串的切分用法实例
2016/02/22 Javascript
JS实现对中文字符串进行utf-8的Base64编码的方法(使其与Java编码相同)
2016/06/21 Javascript
Javascript实现图片不间断滚动的代码
2016/06/22 Javascript
jQuery自定义图片上传插件实例代码
2017/04/04 jQuery
关于Webpack dev server热加载失败的解决方法
2018/02/22 Javascript
vue2.0 实现页面导航提示引导的方法
2018/03/13 Javascript
详解解决Vue相同路由参数不同不会刷新的问题
2018/10/12 Javascript
微信小程序分享海报生成的实现方法
2018/12/10 Javascript
layui问题之渲染数据表格时,仅出现10条数据的解决方法
2019/09/12 Javascript
详解简单易懂的 ES6 Iterators 指南和示例
2019/09/24 Javascript
[01:18]一目了然!DOTA2DotA快捷操作对比第一弹
2014/07/01 DOTA
python实现上传样本到virustotal并查询扫描信息的方法
2014/10/05 Python
python简单判断序列是否为空的方法
2015/06/30 Python
python 随机数使用方法,推导以及字符串,双色球小程序实例
2017/09/12 Python
利用Python代码实现数据可视化的5种方法详解
2018/03/25 Python
pandas DataFrame的修改方法(值、列、索引)
2019/08/02 Python
Django中如何用xlwt生成表格的方法步骤
2021/01/31 Python
乌克兰网上服装店:Bolf.ua
2018/10/30 全球购物
新西兰杂志订阅:isubscribe
2019/08/26 全球购物
Viking比利时:购买办公用品
2019/10/30 全球购物
Python面试题集
2012/03/08 面试题
Java程序员常见面试题
2015/07/16 面试题
环境工程毕业生自荐信
2013/11/17 职场文书
行政经理的岗位职责
2013/11/23 职场文书
中专生求职自荐信范文
2013/12/22 职场文书
旅游管理专业个人求职信范文
2013/12/24 职场文书
小区门卫岗位职责范本
2014/08/24 职场文书
公司经营目标责任书
2015/01/29 职场文书
python超详细实现完整学生成绩管理系统
2022/03/17 Python
windows系统安装配置nginx环境
2022/06/28 Servers