vue项目部署到线上报 Uncaught SyntaxError: Unexpected token ‘<‘
Bug描述:该项目作为一个平台的子平台存在,根据nginx路由分发实现路由跳转。在从主平台跳转到该子平台的时候,页面一片空白,在控制台有3个报错,报错内容均为:Uncaught SyntaxError: Unexpected token ‘<’点开报错详情,发现文件类型为XXX.js文件,实际内容为一个html文件此类型错位一般为期待一个js文件,实际返回一个html文件导致解决方式:查看引
·
Bug描述:该项目作为一个平台的子平台存在,根据nginx路由分发实现路由跳转。在从主平台跳转到该子平台的时候,页面一片空白,在控制台有3个报错,报错内容均为:
Uncaught SyntaxError: Unexpected token ‘<’
点开报错详情,发现文件类型为XXX.js文件,实际内容为一个html文件
此类型错位一般为期待一个js文件,实际返回一个html文件导致
解决方式:
- 查看引用外部文件的路径是否正确
- vue-cli默认build后的文件格式为:js/[name].[chunkhash].js,每次npm run build之后有改动的文件的hash值都会改变,上传后nginx无法找到最新上传的文件,所以默认返回了index.html文件里的内容,我们的文件后缀名是.js,所以自然无法识别的内容,导致抛出“Uncaught SyntaxError: Unexpected token ‘<’”
尝试修改 build/webpack.prod.conf.js 文件中 output输出的文件名格式
output: {
path: config.build.assetsRoot,
filename: utils.assetsPath('js/[name]_[chunkhash].js'),
chunkFilename: utils.assetsPath('js/[id]_[chunkhash].js')
},
更多推荐
已为社区贡献8条内容
所有评论(0)