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项目利用axios请求接口下载excel
Nov 17 Vue.js
在vue中动态修改css其中一个属性值操作
Dec 07 Vue.js
vue3.0中友好使用antdv示例详解
Jan 05 Vue.js
vue使用vue-quill-editor富文本编辑器且将图片上传到服务器的功能
Jan 13 Vue.js
Vue仿Bibibili首页的问题
Jan 21 Vue.js
vscode自定义vue模板的实现
Jan 27 Vue.js
Vue SPA 首屏优化方案
Feb 26 Vue.js
Vue的生命周期一起来看看
Feb 24 Vue.js
vue配置型表格基于el-table拓展之table-plus组件
Apr 12 Vue.js
vue组件冲突之引用另一个组件出现组件不显示的问题
Apr 13 Vue.js
vue项目配置sass及引入外部scss文件
Apr 14 Vue.js
Vue Element plus使用方法梳理
Dec 24 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+DBM的同学录程序(5)
2006/10/09 PHP
php jquery 实现新闻标签分类与无刷新分页
2009/12/18 PHP
php上传图片存入数据库示例分享
2014/03/11 PHP
PHP利用func_get_args和func_num_args函数实现函数重载实例
2014/11/12 PHP
自定义min版smarty模板引擎MinSmarty.class.php文件及用法
2016/05/20 PHP
CSS3画一个阴阳八卦图
2021/03/09 HTML / CSS
JavaScript 解析Json字符串的性能比较分析代码
2009/12/16 Javascript
jquery新的绑定事件机制on方法的使用方法
2014/04/15 Javascript
基于javascript的JSON格式页面展示美化方法
2014/07/02 Javascript
jQuery中append()方法用法实例
2015/01/08 Javascript
jQuery实现垂直半透明手风琴特效代码分享
2015/08/21 Javascript
纯javascript代码实现计算器功能(三种方法)
2015/09/07 Javascript
AngularJS入门教程之表格实例详解
2016/07/27 Javascript
微信公众号  提示:Unauthorized API function 问题解决方法
2016/12/05 Javascript
在vue-cli脚手架中配置一个vue-router前端路由
2017/07/03 Javascript
vuex 使用文档小结篇
2018/01/11 Javascript
爬虫利器Puppeteer实战
2019/01/09 Javascript
Vue.js构建你的第一个包并在NPM上发布的方法步骤
2019/05/01 Javascript
vue element-ui table组件动态生成表头和数据并修改单元格格式 父子组件通信
2019/08/15 Javascript
JS函数进阶之继承用法实例分析
2020/01/15 Javascript
javascript-hashchange事件和历史状态管理实例分析
2020/04/18 Javascript
jQuery编写QQ简易聊天框
2020/08/27 jQuery
详解ES6 扩展运算符的使用与注意事项
2020/11/12 Javascript
Python实现模拟时钟代码推荐
2015/11/08 Python
基于Python实现的微信好友数据分析
2018/02/26 Python
Python实现TCP通信的示例代码
2019/09/09 Python
Python 复平面绘图实例
2019/11/21 Python
利用django创建一个简易的博客网站的示例
2020/09/29 Python
深入浅出CSS3 background-clip,background-origin和border-image教程
2011/01/27 HTML / CSS
Quiksilver荷兰官方网站:冲浪和滑雪板
2019/11/16 全球购物
人力资源部经理的岗位职责
2014/03/04 职场文书
2015年党员岗位承诺书
2015/04/27 职场文书
结婚堵门保证书
2015/05/08 职场文书
安全教育主题班会总结
2015/08/14 职场文书
关于国庆节的广播稿
2015/08/19 职场文书
SQL Server基本使用和简单的CRUD操作
2021/04/05 SQL Server