0


vite项目 Uncaught Syntaxerror: Unexpected token > vue项目上线白屏

问题背景

在开发环境一直没有问题,但是到了生产环境,上线了显示白屏。检查了nginx配置以及web存放位置的对应关系都没有问题,结果打开控制台输出:Uncaught Syntaxerror: Unexpected token ? 这个很明显是语法错误。但是在生产环境能使用,于是赶紧让同事检查了浏览器版本,结果是他那边浏览器的版本很低(谷歌76)导致的。

问题原因:

vite代码版本较高,导致低版本浏览器无法运行

vite项目浏览器兼容性

vue3打包后在低版本浏览器或webview中出现白屏,原因就是因为语法兼容问题。根据vite官方文档描述,build.target默认支持 Chrome >=87、Firefox >=78、Safari >=14、Edge >=88 传送,所以需要我们手动兼容低版本。

解决办法

1.首先安装插件:npm i @vitejs/plugin-legacy -D
2.然后配置vite.config.js

import legacyPlugin from'@vitejs/plugin-legacy';exportdefaultdefineConfig({plugins:[legacyPlugin({targets:['chrome 52'],// 需要兼容的目标列表,可以设置多个additionalLegacyPolyfills:['regenerator-runtime/runtime'],// 面向IE11时需要此插件}),]})

重新打包、运行到浏览器,则低浏览器不会报错了

拓展:Uncaught Syntaxerror: Unexpected token >

其实这个问题很多都是因为我们的代码版本较高导致了,这里因为是vite项目所以使用这种解决办法,如果你这边的vue2项目,或者是react项目,那么可以使用babel-polyfill。具体的步骤可以搜索一下,大差不差


本文转载自: https://blog.csdn.net/weixin_43239880/article/details/130016895
版权归原作者 吃炸鸡的前端 所有, 如有侵权,请联系我们删除。

“vite项目 Uncaught Syntaxerror: Unexpected token > vue项目上线白屏”的评论:

还没有评论