首页 > 网络编程 > JavaScript > javascript类库 > vue.js > vite项目Uncaught Syntaxerror:Unexpected token>vue项目上线白屏
解决vite项目Uncaught Syntaxerror:Unexpected token>vue项目上线白屏问题
作者:吃炸鸡的前端
这篇文章主要介绍了解决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'; export default defineConfig({ plugins: [ legacyPlugin({ targets: ['chrome 52'], // 需要兼容的目标列表,可以设置多个 additionalLegacyPolyfills: ['regenerator-runtime/runtime'], // 面向IE11时需要此插件 }), ] })
重新打包、运行到浏览器,则低浏览器不会报错了
拓展:Uncaught Syntaxerror: Unexpected token >
其实这个问题很多都是因为我们的代码版本较高导致了,这里因为是vite项目所以使用这种解决办法
如果你这边的vue2项目,或者是react项目,那么可以使用babel-polyfill。
具体的步骤可以搜索一下,大差不差!
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。
您可能感兴趣的文章:
- VUE3刷新页面报错问题解决:Uncaught SyntaxError:Unexpected token '<'
- Vue项目报错:Uncaught SyntaxError: Unexpected token '<'的解决方法
- 解决VUE项目在IIS部署出现:Uncaught SyntaxError: Unexpected token < 报错
- Vue项目报错:Uncaught SyntaxError: Unexpected token <
- vue-cli 打包后提交到线上出现 "Uncaught SyntaxError:Unexpected token" 报错
- vue出现Uncaught SyntaxError:Unexpected token问题及解决