浅谈webpack打包过程中因为图片的路径导致的问题


Posted in Javascript onFebruary 21, 2018

最近在制作一个自己的个人博客的时候遇到这么一个问题, 在CSS中使用了相对路径来充当背景图片, 如下所示:

浅谈webpack打包过程中因为图片的路径导致的问题

然后将整个工程使用webpack打包之后, 在浏览器上运行却报错了, 报错如下:

浅谈webpack打包过程中因为图片的路径导致的问题

也就是说, 打包之后这个图片文件找不到了, 那么原因出在哪里呢? 先来看一下我在webpack.config.js文件中的配置:

浅谈webpack打包过程中因为图片的路径导致的问题

在这里其实我的loader并没有使用错误的, 图片对应的就是使用url-loader来处理. 那么再来看一下通过webpack打包之后的目录:

浅谈webpack打包过程中因为图片的路径导致的问题

发现dist文件夹中出现了我们想要打包生成的一个文件build.js, 同时还额外的生成了一个图片文件, 这个文件就是刚刚我们在CSS中

指定的一个背景图片. 通过浏览器的报错信息可以发现, build.js为我们指定的这个图片的地址明显不正确, 在默认情况下, 打包过程会

将使用到的图片拷贝一份放到output的path指定的目录下, 然而在build.js中引用的图片路径确实整个工程文件的根目录, 因此自然引

用不到. 那么应该如何处理呢? 在webpack.config.js文件中output对象中指定publicPath属性, 它用来指定静态资源 (图片等) 的发布地

址, 当配置过该属性后,打包文件 (也就是build.js) 中所有通过相对路径引用的资源都会被配置的路径所替换。因此通过如此设置

之后build.js中引用该图片的路径会在一开始的根目录的路径后面添加publicPath指定的路径, 所以我们在webpack.config.js添加

下图中的红色框中的内容即可:

浅谈webpack打包过程中因为图片的路径导致的问题

那么最终运行起来就能够通过dist文件夹找到生成的图片了!

以上这篇浅谈webpack打包过程中因为图片的路径导致的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
js通过地址栏给action传值(中文乱码全是问号)
May 02 Javascript
JavaScript中的console.assert()函数介绍
Dec 29 Javascript
JSON 的正确用法探讨:Pyhong、MongoDB、JavaScript与Ajax
May 15 Javascript
Jquery元素追加和删除的实现方法
May 24 Javascript
JS中用三种方式实现导航菜单中的二级下拉菜单
Oct 31 Javascript
详解Vue快速零配置的打包工具——parcel
Jan 16 Javascript
如何从0开始用node写一个自己的命令行程序
Dec 29 Javascript
vue.js实现会动的简历(包含底部导航功能,编辑功能)
Apr 08 Javascript
浅析Vue中拆分视图层代码的5点建议
Aug 15 Javascript
viewer.js实现图片预览功能
Jun 24 Javascript
javascript实现简单页面倒计时
Mar 02 Javascript
vue route新窗口跳转页面并且携带与接收参数
Apr 10 Vue.js
解决vue打包之后静态资源图片失效的问题
Feb 21 #Javascript
Vue项目中设置背景图片方法
Feb 21 #Javascript
使用vue + less 实现简单换肤功能的示例
Feb 21 #Javascript
利用angular、react和vue实现相同的面试题组件
Feb 19 #Javascript
jQuery实现滚动到底部时自动加载更多的方法示例
Feb 18 #jQuery
Angular实现的进度条功能示例
Feb 18 #Javascript
Angular2.0实现modal对话框的方法示例
Feb 18 #Javascript
You might like
php 创建以UNIX时间戳命名的文件夹(示例代码)
2014/03/08 PHP
PHP实现的带超时功能get_headers函数
2015/02/10 PHP
php实现购物车功能(下)
2016/01/05 PHP
基于PHP实现短信验证码接口(容联运通讯)
2016/09/06 PHP
PHP单例模式定义与使用实例详解
2017/02/06 PHP
JavaScript 高级篇之DOM文档,简单封装及调用、动态添加、删除样式(六)
2012/04/07 Javascript
js控制表单操作的常用代码小结
2013/08/15 Javascript
IE6中链接A的href为javascript协议时不在当前页面跳转
2014/06/05 Javascript
JavaScript实现点击文字切换登录窗口的方法
2015/05/11 Javascript
jQuery插件实现文字无缝向上滚动效果代码
2016/02/25 Javascript
第一次接触神奇的Bootstrap
2016/10/14 Javascript
JS正则表达式学习之贪婪和非贪婪模式实例总结
2016/12/26 Javascript
通过jsonp获取json数据实现AJAX跨域请求
2017/01/22 Javascript
jQuery zTree树插件动态加载实例代码
2017/05/11 jQuery
bootstrap multiselect下拉列表功能
2017/08/22 Javascript
Node.js 使用递归实现遍历文件夹中所有文件
2017/09/18 Javascript
jfinal与bootstrap的登出实战详解
2017/11/27 Javascript
BootStrap模态框闪退问题实例代码详解
2018/12/10 Javascript
Python使用代理抓取网站图片(多线程)
2014/03/14 Python
python基于windows平台锁定键盘输入的方法
2015/03/05 Python
总结Python中逻辑运算符的使用
2015/05/13 Python
Python AES加密实例解析
2018/01/18 Python
Python网络爬虫神器PyQuery的基本使用教程
2018/02/03 Python
Python删除n行后的其他行方法
2019/01/28 Python
详解python列表(list)的使用技巧及高级操作
2019/08/15 Python
利用Python实现某OA系统的自动定位功能
2020/05/27 Python
CSS3 圆角效果
2009/07/15 HTML / CSS
结合CSS3的新特性来总结垂直居中的实现方法
2016/05/30 HTML / CSS
DHC美国官网:日本通信销售第一的化妆品品牌
2017/11/12 全球购物
斯洛伐克家具和时尚装饰品购物网站:Butlers.sk
2019/09/08 全球购物
电话销售经理岗位职责
2013/12/07 职场文书
行政助理的岗位职责
2014/02/18 职场文书
会走路的树教学反思
2014/02/20 职场文书
超市仓管员岗位职责
2014/04/07 职场文书
优秀教师主要事迹材料
2015/11/04 职场文书
SQLServer2019 数据库环境搭建与使用的实现
2021/04/08 SQL Server