vite项目 Uncaught Syntaxerror: Unexpected token > 在谷歌浏览器可以正常运行,但是其他浏览器白屏

383 阅读1分钟

问题原因:

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时需要此插件
    }),
]

总结

vite项目所以使用这种解决办法,如果你这边的vue2项目,或者是react项目,那么可以使用babel-polyfill。