
React Vite代理失效?启动方式是关键!
很多开发者在使用React Vite时,会遇到代理配置失效的难题。本文将通过一个案例分析,帮助您快速找到问题所在并解决它。
问题:代理配置无效
一位开发者按照标准方法在vite.config.js文件中配置了代理(此处无法显示vite.config.js配置截图),但代理仍然不起作用。他的package.json文件中的scripts部分如下:
{
"scripts": {
"dev": "vite --mode development --host",
"build": "vite build --mode production",
"start": "react-scripts start"
}
}
问题根源:启动命令冲突
关键在于package.json中的scripts配置。开发者用vite命令启动开发服务器,但start命令却使用了react-scripts start。这意味着他实际运行的是create react app自带的服务器,而不是Vite服务器。而create react app服务器不会读取vite.config.js中的配置,因此代理自然失效。
解决方案:统一启动命令
解决方法很简单:确保使用vite命令启动开发服务器。您可以删除start命令,或者修改dev命令,使其正确启动Vite开发服务器并应用代理配置。例如,将dev命令修改为:
"dev": "vite"
运行npm run dev即可启动Vite服务器,并正确加载vite.config.js中的代理配置,使代理生效。 当然,也要确保vite.config.js中的代理配置本身正确无误,包括目标地址、路径匹配等。 配置错误也会导致代理失效,即使启动命令正确。










