vue-cli3升级vite中遇到的问题

494 阅读2分钟

携手创作,共同成长!这是我参与「掘金日新计划 · 8 月更文挑战」的第20天,点击查看活动详情

随着vite的越来越火爆,我看了看我们愈发庞大的项目,想体验一下打包速度质的提升,于是也将项目升级了一波,由古老的vue-cli3升级到vite,升级过程中也遇到了不少问题,本文是记录下所遇到的问题,供后面大家升级时及时避坑。

话不多说,正文开始。

先用自动化工具,升级vite

npm install @originjs/webpack-to-vite -g

webpack-to-vite -d

执行完自动化工具后,遇到的报错和解决方案如下:

1.import的东西没有导出

No matching export in "src/ajax/xxx.js" for import "ware_special_detail"

image.png

这是代码问题,之前不报错,没有删除无用的引入,所以删除无用的引入即可

2. 在vite.config.js中没有配置别名

The following dependencies are imported but could not be resolved

image.png

之前在vue.config.js中配了的,如下图:

image.png

解决方案:在vite.config.js中配置一遍:

image.png

3.缺少对less的配置

[Plugin: vite:css] Internal server error: Inline JavaScript is not enabled. Is it set in your options?

image.png

解决方案如下图:

image.png

4.vite不支持webpack的动态导入

image.png

解决方案:改用其他方式引入或按提示安装插件

5.global 未定义

image.png

global 是 Node里面的变量, 会在客户端报错 ?

一层层看下去, 原来是引入的第三方包使用了global。

解决方案:在入口文件index.html中加入 window.global = window;

6.以为大功告成,登录页出现,但无法登录

原因:代理未配置,跨域问题

解决方案:配置代理 image.png 但是在vite.config.js中配置了proxy后,发现页面变成了下图这个样子,页面直接丢失

image.png

解决方案:代理里不要配置'/',如下图

image.png

8.大功告成