浅谈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 相关文章推荐
用JavaScript对JSON进行模式匹配(Part 1-设计)
Jul 17 Javascript
模拟电子签章盖章效果的jQuery插件源码
Jun 24 Javascript
jQuery移除tr无效的解决方法(tr是动态添加)
Sep 22 Javascript
JavaScript实现的一个倒计时的类
Mar 12 Javascript
Bootstrap按钮组件详解
Apr 26 Javascript
JS 动态加载js文件和css文件 同步/异步的两种简单方式
Sep 23 Javascript
Node.js中多进程模块Cluster的介绍与使用
May 27 Javascript
彻底解决 webpack 打包文件体积过大问题
Jul 07 Javascript
Angular搜索 过滤 批量删除 添加 表单验证功能集锦(实例代码)
Oct 25 Javascript
vue2.0 根据状态值进行样式的改变展示方法
Mar 13 Javascript
JavaScript判断数组类型的方法
Oct 23 Javascript
基于vue实现简易打地鼠游戏
Aug 21 Javascript
解决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编程中字符串处理的5个技巧小结
2007/11/13 PHP
yii使用activeFileField控件实现上传文件与图片的方法
2015/12/28 PHP
深入讲解PHP的对象注入(Object Injection)
2017/03/01 PHP
laravel 解决多库下的DB::transaction()事务失效问题
2019/10/21 PHP
javascript 程序库的比较(一)之DOM功能
2010/04/07 Javascript
juqery 学习之五 文档处理 包裹、替换、删除、复制
2011/02/11 Javascript
JS实现仿新浪微博发布内容为空时提示功能代码
2015/08/19 Javascript
详解jQuery lazyload 懒加载
2016/12/19 Javascript
jQuery文字轮播特效
2017/02/12 Javascript
JavaScript实现弹出广告功能
2017/03/30 Javascript
Django中使用jquery的ajax进行数据交互的实例代码
2017/10/15 jQuery
vue.js语法及常用指令
2017/10/29 Javascript
关于Webpack dev server热加载失败的解决方法
2018/02/22 Javascript
vue配置多页面的实现方法
2018/05/22 Javascript
vue2.0项目集成Cesium的实现方法
2019/07/30 Javascript
JavaScript多种滤镜算法实现代码实例
2019/12/10 Javascript
Python通过websocket与js客户端通信示例分析
2014/06/25 Python
python利用标准库如何获取本地IP示例详解
2017/11/01 Python
浅析PHP与Python进行数据交互
2018/05/15 Python
解决Pycharm下面出现No R interpreter defined的问题
2018/10/29 Python
Python PyInstaller库基本使用方法分析
2019/12/12 Python
Python3.7+tkinter实现查询界面功能
2019/12/24 Python
如何开发一款堪比APP的微信小程序(腾讯内部团队分享)
2016/12/22 HTML / CSS
基于HTML5+Webkit实现树叶飘落动画
2017/12/28 HTML / CSS
普天C++笔试题
2016/03/20 面试题
大班开学家长寄语
2014/04/04 职场文书
产品推广策划方案
2014/05/10 职场文书
植树节口号
2014/06/21 职场文书
普通话宣传标语
2014/06/26 职场文书
科技活动周标语
2014/10/08 职场文书
党员组织生活会发言材料
2014/10/17 职场文书
2015小学教师年度工作总结
2015/05/12 职场文书
拖欠货款起诉状
2015/05/20 职场文书
《最后一头战象》教学反思
2016/02/16 职场文书
XX部保密工作制度范本
2019/08/27 职场文书
Oracle查看表空间使用率以及爆满解决方案详解
2022/07/23 Oracle