前端项目发布后打开报错Uncaught SyntaxError: Unexpected token ‘<‘ (at chunk-vendors)

报错原因 :请求js拿到的是一个非js脚本文件,因为请求没拿到正确路径。

如:我的项目是部署在www.a.com/web下,打包后index.html内请求的脚本默认是

复制代码
<script src="/static/js/chunk-vendors.ea8a242f.js"></script>

而/代表绝对路径,也就是请求服务器的www.a.com/static/js/chunk-vendors.ea8a242f.js,所以需要把绝对路径改成相对路径(前面加个.)。

复制代码
<script src="./static/js/chunk-vendors.ea8a242f.js"></script>

这样就是请求:www.a.com/web/static/js/chunk-vendors.ea8a242f.js,他会补上项目部署的位置:web

解决办法

在配置文件加 publicPath: './',

普通vue-cli项目在vue.config.js加,

我的是Uniapp,在manifest.json的H5(我是发布H5)加"publicPath" : "./",

相关推荐
han_5 分钟前
Vue.js 为什么要推出 Vapor Mode?
前端·javascript·vue.js
oden18 分钟前
AI重构10000行老代码:2周完成1个月工作量的真实复盘
前端·aigc·ai编程
小满zs31 分钟前
Next.js第十二章(RSC/服务端组件/客户端组件)
前端
亿元程序员1 小时前
明明直接用就可以了,非要在Creator里面写???
前端
wadesir1 小时前
Nginx负载均衡代理协议详解(从零开始搭建高可用Web服务)
前端·nginx·负载均衡
秋氘渔1 小时前
Vue 3 组合式写法:侦听器 watch 和 watchEffect 的区别及使用技巧
前端·javascript·vue.js·watch·watcheffect
光头程序员1 小时前
vue学习笔记
vue.js·笔记·学习
想睡八个小时1 小时前
已包含的文件名 “a.vue“ 仅大小写与文件名 “A.vue“ 不同
前端·vscode
阿奇__2 小时前
element二次封装组件套餐 搜索组件 表格组件 弹窗组件
javascript·vue.js·elementui
The_era_achievs_hero2 小时前
Echarts
前端·javascript·echarts