Vue 打包的静态文件不能直接运行的原因及解决办法


Posted in Vue.js onNovember 19, 2020

问题

吾辈使用 vue-cli 直接生成的 vue 模板项目,在模板之上继续开发的。然而在使用 npm run build 打包项目时,却发现打包好的项目在浏览器中直接打开好像什么都没有?

原因

查看了一下打包后的 index.html 源码,终于发现了一个重要的点:

Vue 打包的静态文件不能直接运行的原因及解决办法

所有涉及到路径的地方全都是以 / 开头的

下面是吾辈打包后生成的 dist 目录

dist:.
│ index.html
│
└─static
  ├─css
  │   app.b7bce283257fbd427fb1dc3fea80cee1.css
  │   app.b7bce283257fbd427fb1dc3fea80cee1.css.map
  │
  ├─fonts
  │   MaterialIcons-Regular.012cf6a.woff
  │   MaterialIcons-Regular.570eb83.woff2
  │   MaterialIcons-Regular.a37b0c0.ttf
  │   MaterialIcons-Regular.e79bfd8.eot
  │
  └─js
      app.58cce746b2fe4ac2f2b9.js
      app.58cce746b2fe4ac2f2b9.js.map
      manifest.2ae2e69a05c33dfc65f8.js
      manifest.2ae2e69a05c33dfc65f8.js.map
      vendor.a32972498ed8de656202.js
      vendor.a32972498ed8de656202.js.map

这下很清楚了,vue-cli 生成的模板项目打包后的文件默认需要放到静态资源服务器上,而且还必须是根目录!这很不好,很糟糕,所以需要修改配置。

解决方案

修改文件 _/config/index.js_,将 build.assetsPublicPath 属性的值由 / 改为 ./

Vue 打包的静态文件不能直接运行的原因及解决办法

修改文件 _/build/utils.js_,在插件 ExtractTextPlugin 中添加 publicPath: '../../'

Vue 打包的静态文件不能直接运行的原因及解决办法

那么,使用 npm run build 重新打包后的静态文件应该就可以直接打开啦

以上就是Vue 打包的静态文件不能直接运行的原因及解决办法的详细内容,更多关于vue 打包静态文件的资料请关注三水点靠木其它相关文章!

Vue.js 相关文章推荐
vue下拉刷新组件的开发及slot的使用详解
Dec 23 Vue.js
vue 使用class创建和清除水印的示例代码
Dec 25 Vue.js
vue+vant 上传图片需要注意的地方
Jan 03 Vue.js
jenkins自动构建发布vue项目的方法步骤
Jan 04 Vue.js
基于Vue2实现移动端图片上传、压缩、拖拽排序、拖拽删除功能
Jan 05 Vue.js
Vue实现多页签组件
Jan 14 Vue.js
vue路由实现登录拦截
Mar 24 Vue.js
vue3使用vue-router的完整步骤记录
Jun 20 Vue.js
vue中this.$http.post()跨域和请求参数丢失的解决
Apr 08 Vue.js
分享一个vue实现的记事本功能案例
Apr 11 Vue.js
vue+elementUI实现表格列的显示与隐藏
Apr 13 Vue.js
vue2的 router在使用过程中遇到的一些问题
Apr 13 Vue.js
如何使用 vue-cli 创建模板项目
Nov 19 #Vue.js
深入了解Vue3模板编译原理
Nov 19 #Vue.js
vue 获取到数据但却渲染不到页面上的解决方法
Nov 19 #Vue.js
vue 插槽简介及使用示例
Nov 19 #Vue.js
详解Vue的mixin策略
Nov 19 #Vue.js
一篇超完整的Vue新手入门指导教程
Nov 18 #Vue.js
vue3.0实现点击切换验证码(组件)及校验
Nov 18 #Vue.js
You might like
十天学会php之第六天
2006/10/09 PHP
PHP实现的文件操作类及文件下载功能示例
2016/12/24 PHP
PHP对称加密算法(DES/AES)类的实现代码
2017/11/14 PHP
PHP使用文件锁解决高并发问题示例
2018/03/29 PHP
使用javascript获取flash加载的百分比的实现代码
2011/05/25 Javascript
js 代码优化点滴记录
2012/02/19 Javascript
可编辑下拉框的2种实现方式
2014/06/13 Javascript
jQuery实现自定义事件的方法
2015/04/17 Javascript
浅析javascript异步执行函数导致的变量变化问题解决思路
2016/05/13 Javascript
AngularJS基础 ng-repeat 指令简单示例
2016/08/03 Javascript
JS 数字转换为大写金额的简单实例
2016/08/04 Javascript
Bootstrap Table使用心得总结
2016/11/29 Javascript
微信小程序 小程序制作及动画(animation样式)详解
2017/01/06 Javascript
Vue.js实现表格动态增加删除的方法(附源码下载)
2017/01/20 Javascript
jQuery获取Table某列的值(推荐)
2017/03/03 Javascript
AngularJS中使用three.js的实例详解
2017/07/21 Javascript
微信小程序使用二次贝塞尔曲线画波浪
2018/12/25 Javascript
jquery 遍历hash操作示例【基于ajax交互】
2019/10/12 jQuery
[01:14]英雄,所敬略同——2018完美盛典宣传视频4K
2018/12/05 DOTA
python使用rsa加密算法模块模拟新浪微博登录
2014/01/22 Python
Python3中多线程编程的队列运作示例
2015/04/16 Python
使用tensorflow实现AlexNet
2017/11/20 Python
详解django三种文件下载方式
2018/04/06 Python
Python批量生成特定尺寸图片及图画任意文字的实例
2019/01/30 Python
大学生党课思想汇报
2013/12/29 职场文书
会计专业自我鉴定范文
2013/12/29 职场文书
大学生2014全国两会学习心得体会
2014/03/10 职场文书
竞聘演讲稿
2014/04/24 职场文书
违纪学生保证书
2015/02/27 职场文书
出国留学单位推荐信
2015/03/26 职场文书
个人收入证明格式
2015/06/24 职场文书
初中班级口号霸气押韵
2015/12/24 职场文书
2016大学先进团支部事迹材料
2016/03/01 职场文书
责任书格式
2019/04/18 职场文书
关于食品安全的演讲稿范文(三篇)
2019/10/21 职场文书
LeetCode189轮转数组python示例
2022/08/05 Python