解决Vue项目打包后打开index.html页面显示空白以及图片路径错误的问题


Posted in Javascript onOctober 25, 2019

Vue项目运行npm run build后会生成一个dist文件夹,我们一般都是把这个文件夹部署到服务器上。dist文件夹里边有一个static文件和一个index.html页面,这个index就是最后单页面的最终文件。

问题一:我在打包完成后,打开index.html文件发现地址并没有携带路由。

解决Vue项目打包后打开index.html页面显示空白以及图片路径错误的问题

这样的话页面就是空白了,因为没有组件被添加到页面中。打开F12会看到一堆的红色failed请求。打开请求地址是这样的。

解决Vue项目打包后打开index.html页面显示空白以及图片路径错误的问题

进入D盘就开始寻找static文件夹当然是找不到的。既然知道了是打包之后寻找文件的地址错误,就去config文件夹下的index.js中寻找问题。index.js中的build命令的配置有一个属性叫assetsPublicPath,它的值为‘/'。意思是根目录,这时会从index.html所在的硬盘的根目录下开始查找,自然无法找到。解决办法:

解决Vue项目打包后打开index.html页面显示空白以及图片路径错误的问题

改为‘./'这时就不再是绝对路径的根目录了,而是改为了相对路径,同目录下进行查找。再次打包,页面基本正常。

问题二:我再次打包后,页面可以正常打开。但是页面上的一些图片请求失败。

我这里请求失败的都是背景图片,而且只是某一些失败。我一直有一个疑惑就是为什么同一个css文件中的背景图片请求有的成功有的失败,要知道我的图片都是放在同一个文件夹下边的。目前这个疑惑还没有解决。

打开某一个失败的请求,我们会发现请求的路径是这样的。

解决Vue项目打包后打开index.html页面显示空白以及图片路径错误的问题

也就是说这个css文件是从当前文件夹下往里寻找static/img/XXX.png,要知道static文件夹是在dist根目录下边的,因此,我们需要修改build的全局配置,改变css文件的文件请求路径。css文件在static里边的css文件夹中,因此需要先‘../../'出到dist根目录下,然后再static/img/XXX.png,就可以正确找到对应的图片文件。

解决办法:

修改build文件夹下边的utils.js文件。

解决Vue项目打包后打开index.html页面显示空白以及图片路径错误的问题

再文件相同的if语句下添加下图中选中的代码。

解决Vue项目打包后打开index.html页面显示空白以及图片路径错误的问题

重新打包,即可解决图片找不到的问题。

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

Javascript 相关文章推荐
图片在浏览器中底部对齐 解决方法之一
Nov 30 Javascript
Javascript 判断是否存在函数的方法
Jan 03 Javascript
jquery弹出层类代码分享
Dec 27 Javascript
Angularjs 基础入门
Dec 26 Javascript
Bootstrap布局方式详解
May 27 Javascript
jQuery ajax应用总结
Jun 02 Javascript
jQuery ajax中使用confirm,确认是否删除的简单实例
Jun 17 Javascript
javascript正则表达式中分组详解
Jul 17 Javascript
使用Bootstrap4 + Vue2实现分页查询的示例代码
Dec 21 Javascript
使用D3.js构建实时图形的示例代码
Aug 28 Javascript
JavaScript数据结构之栈实例用法
Jan 18 Javascript
vue监听滚动事件的方法
Dec 21 Vue.js
Vue el-autocomplete远程搜索下拉框并实现自动填充功能(推荐)
Oct 25 #Javascript
基于Vue el-autocomplete 实现类似百度搜索框功能
Oct 25 #Javascript
vue实现评论列表功能
Oct 25 #Javascript
vue中使用element ui的弹窗与echarts之间的问题详解
Oct 25 #Javascript
浅谈layui 表单元素的选中问题
Oct 25 #Javascript
layUI的验证码功能及校验实例
Oct 25 #Javascript
layui点击按钮页面会自动刷新的解决方案
Oct 25 #Javascript
You might like
Mysql的常用命令
2006/10/09 PHP
php使用SAE原生Mail类实现各种类型邮件发送的方法
2016/10/10 PHP
DOM相关内容速查手册
2007/02/07 Javascript
Jquery 表单取值赋值的一些基本操作
2009/10/11 Javascript
jQuery学习总结之元素的相对定位和选择器(持续更新)
2011/04/26 Javascript
为Javascript中的String对象添加去除左右空格的方法(示例代码)
2013/11/30 Javascript
JS判断浏览器是否支持某一个CSS3属性的方法
2014/10/17 Javascript
js 左右悬浮对联广告代码示例
2014/12/12 Javascript
javascript实现左右控制无缝滚动
2014/12/31 Javascript
Easyui Treegrid改变默认图标的方法
2016/04/29 Javascript
BootStrap网页中代码显示用法详解
2016/10/21 Javascript
BootStrap Validator对于隐藏域验证和程序赋值即时验证的问题浅析
2016/12/01 Javascript
node.js实现的装饰者模式示例
2017/09/06 Javascript
javascript函数的节流[throttle]与防抖[debounce]
2017/11/15 Javascript
JS中判断某个字符串是否包含另一个字符串的五种方法
2018/05/03 Javascript
opencv 识别微信登录验证滑动块位置
2018/08/07 Javascript
vue+element实现打印页面功能
2019/05/20 Javascript
jQuery事件模型默认行为执行顺序及trigger()与 triggerHandler()比较实例分析
2020/04/30 jQuery
python使用cookie库操保存cookie详解
2014/03/03 Python
Python之os操作方法(详解)
2017/06/15 Python
解决Linux系统中python matplotlib画图的中文显示问题
2017/06/15 Python
python3爬取淘宝信息代码分析
2018/02/10 Python
python 通过logging写入日志到文件和控制台的实例
2018/04/28 Python
使用Python进行体育竞技分析(预测球队成绩)
2019/05/16 Python
Python列表原理与用法详解【创建、元素增加、删除、访问、计数、切片、遍历等】
2019/10/30 Python
Python爬虫获取页面所有URL链接过程详解
2020/06/04 Python
用python写一个带有gui界面的密码生成器
2020/11/06 Python
用纯css3和html制作泡沫对话框实现代码
2013/03/21 HTML / CSS
旅游管理毕业生自荐信
2013/11/05 职场文书
毕业生优秀推荐信
2013/11/26 职场文书
毕业生自荐书
2013/12/18 职场文书
舞蹈专业大学生职业规划范文
2014/03/12 职场文书
供货协议书范本
2014/04/22 职场文书
社团活动总结模板
2014/06/30 职场文书
合作意向书范本
2019/04/17 职场文书
linux目录管理方法介绍
2022/06/01 Servers