如何创建旧版本的react项目
使用 create-react-app 指定版本
通过 npx 或 yarn 直接创建指定版本的 React 项目,需在命令中明确版本号。例如创建 React 16.14.0 的项目(对应 react-scripts 3.4.4):
npx create-react-app@3.4.4 my-old-app
或使用 yarn:
yarn create react-app@3.4.4 my-old-app
完成安装后,检查 package.json 确认版本是否符合预期。必要时可手动调整依赖版本号并重新运行 npm install 或 yarn install。
修改现有项目的依赖版本
对于已存在的项目,直接编辑 package.json 修改以下字段:
"dependencies": {
"react": "^16.14.0",
"react-dom": "^16.14.0"
},
"devDependencies": {
"react-scripts": "3.4.4"
}
删除 node_modules 和 package-lock.json/yarn.lock 后重新安装依赖:
rm -rf node_modules package-lock.json
npm install
使用第三方模板工具
Degit 等工具可克隆特定历史版本的模板:
npx degit facebook/create-react-app#v3.4.4 my-old-app
cd my-old-app
npm install
此方式会获取该版本发布时的完整项目结构,但需注意部分依赖可能需手动降级。
版本兼容性注意事项
- React 17 之前版本(如 16.x)需搭配匹配的
react-dom和react-scripts - Webpack 4 及以下版本配置与新版差异较大,避免混用
- Babel 7 是多数旧版 React 项目的编译基础,新版 Babel 可能导致兼容问题
- 测试库需对应版本(如 Enzyme 适配 React 16)
锁定依赖版本
为防止意外升级,建议在 package.json 中使用精确版本号(移除 ^ 或 ~ 前缀),或使用 npm shrinkwrap 生成版本锁文件。







