解决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 相关文章推荐
js技巧--转义符"\"的妙用
Jan 09 Javascript
文字不间断滚动(上下左右)实例代码
Apr 21 Javascript
JS预览图像将本地图片显示到浏览器上
Aug 25 Javascript
jquery easyui 结合jsp简单展现table数据示例
Apr 18 Javascript
jquery中JSON的解析方式
Mar 16 Javascript
JS实现HTML表格排序功能
Aug 05 Javascript
angular之ng-template模板加载
Nov 09 Javascript
Vue基础学习之项目整合及优化
Jun 02 Javascript
JS中FileReader类实现文件上传及时预览功能
Mar 27 Javascript
基于vue.js仿淘宝收货地址并设置默认地址的案例分析
Aug 20 Javascript
详解Vue 的异常处理机制
Nov 30 Vue.js
Vue.js 带下拉选项的输入框(Textbox with Dropdown)组件
Apr 17 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
PHP封装的一个支持HTML、JS、PHP重定向的多功能跳转函数
2014/06/19 PHP
smarty模板引擎中变量及变量修饰器用法实例
2015/01/22 PHP
php基本函数汇总
2015/07/09 PHP
PHP自毁程序(慎用)
2015/07/09 PHP
php+ajax无刷新上传图片实例代码
2015/11/17 PHP
PHP递归遍历多维数组实现无限分类的方法
2016/05/06 PHP
IE与Firefox下javascript getyear年份的兼容性写法
2007/12/20 Javascript
11个用于提高排版水平的基于jquery的文字效果插件
2012/09/14 Javascript
js中escape对应的C#解码函数 UrlDecode
2012/12/16 Javascript
jQuery.event兼容各浏览器的event详细解析
2013/12/18 Javascript
Javascript学习指南
2014/12/01 Javascript
浅析webapp框架AngularUI的demo
2014/12/21 Javascript
JavaScript中的数据类型转换方法小结
2015/10/26 Javascript
jQuery 中ajax异步调用的四种方式
2016/06/28 Javascript
使用ajaxfileupload.js实现上传文件功能
2016/08/13 Javascript
巧用Javascript的逻辑运算符
2016/12/02 Javascript
纯js实现悬浮按钮组件
2016/12/17 Javascript
vue中axios处理http发送请求的示例(Post和get)
2017/10/13 Javascript
JavaScript实现的简单Tab点击切换功能示例
2018/07/06 Javascript
微信小程序自定义底部导航带跳转功能
2018/11/27 Javascript
JS实现关闭小广告特效
2021/01/29 Javascript
js Math数学简单使用操作示例
2020/03/13 Javascript
详解Node.js使用token进行认证的简单示例
2020/05/25 Javascript
JavaScript中使用Spread运算符的八种方法总结
2020/06/18 Javascript
用Python实现服务器中只重载被修改的进程的方法
2015/04/30 Python
转换科学计数法的数值字符串为decimal类型的方法
2018/07/16 Python
Python get获取页面cookie代码实例
2018/09/12 Python
浅谈SciPy中的optimize.minimize实现受限优化问题
2020/02/29 Python
关于python tushare Tkinter构建的简单股票可视化查询系统(Beta v0.13)
2020/10/19 Python
美国眼镜网站:EyeBuyDirect
2017/04/13 全球购物
销售会计工作职责
2013/12/02 职场文书
效能监察建议书
2014/05/19 职场文书
二年级语文下册复习计划
2015/01/19 职场文书
2019最新企业员工考勤管理制度(通用版)!
2019/07/02 职场文书
导游词之江苏同里古镇
2019/11/18 职场文书
mysql 体系结构和存储引擎介绍
2022/05/06 MySQL