VS Code中脚本无start命令,替换后报错找不到index.html
问题:Vite项目替换scripts为react-scripts后执行start报错
我的项目基于Vite创建,原有package.json的scripts配置如下:
"scripts": { "dev": "vite", "build": "vite build", "lint": "eslint src --ext js,jsx --report-unused-disable-directives --max-warnings 0", "preview": "vite preview" },
存在两个问题:
- 缺少
start命令 preview命令无法实现热重载
我尝试将scripts替换为create-react-app的配置:
"scripts": { "start": "react-scripts start", "build": "react-scripts build", "test": "react-scripts test", "eject": "react-scripts eject" }
但执行npm start时出现报错:
> vite@0.0.0 start > react-scripts start Could not find a required file. Name: index.html
解决方法
不要混用Vite和react-scripts,你的项目是Vite初始化的,继续用Vite的命令即可:
- 添加start命令:直接让
start指向Vite的开发服务器命令,它自带热重载功能,和dev命令效果一致。 - 关于preview的热重载:
vite preview是用来预览生产构建产物的,本身不支持热重载。开发阶段修改代码请用start或dev命令,可实时更新代码效果。
修改后的scripts配置:
"scripts": { "start": "vite", "dev": "vite", "build": "vite build", "lint": "eslint src --ext js,jsx --report-unused-disable-directives --max-warnings 0", "preview": "vite preview" },
如果执意要切换到react-scripts,需要:
- 安装
react-scripts依赖 - 将根目录的
index.html移动到public文件夹下 - 调整项目结构适配create-react-app规范,但不建议这么做,会引发工具链冲突。
内容的提问来源于stack exchange,提问作者Avantika Singh
相关产品推荐
相关产品推荐

