![](/img/trans.png)
[英]How to create a react project with specific version of create-react-app?
[英]How to use create-react-app with an older React version?
如果你是因为 react v18 而来到这里,并且你想回到以前的非更改破坏版本,这就是我所做的:
在你的package.json
替换:
"react": "^18.0.0"
"react-dom": "^18.0.0"
和
"react": "^17.0.2"
"react-dom": "^17.0.2"
然后到你的入口文件index.js
顶部,替换:
import ReactDOM from 'react-dom/client'
和
import ReactDOM from 'react-dom';
仍在您的index.js
文件中,替换:
const root = ReactDOM.createRoot(document.getElementById('root'));
root.render(
<React.StrictMode>
<App />
</React.StrictMode>
);
和
ReactDOM.render(
<React.StrictMode>
<App />
</React.StrictMode>,
document.getElementById('root')
);
node_modules
并运行yarn install
yarn start
似乎您可以继续使用它来生成一个 React 16 应用程序,然后编辑 package.json 并运行npm i
(或npm install
; npm i
只是一个快捷方式)。
我只是将react-scripts
版本保留在最新版本,只更改了react
和react-dom
的版本,它起作用了:
"devDependencies": {
"react-scripts": "1.0.14"
},
"dependencies": {
"react": "^15.6.1",
"react-dom": "^15.6.1"
},
作为上述答案的补充,在所有操作之后,我不得不更新这个库(用于 TS 模板):
"@testing-library/react": "^12.1.1",
"@testing-library/user-event": "^12.5.0"
我遇到了这个问题,尤其是使用新的 create-react-app v18。 我所做的只是删除了我的package-lock.json
文件以及我的node_modules
文件夹。 之后我编辑了package.json
,替换了 react-dom 并使用我想要的版本做出反应,如下所示:
"react": "^17.0.2",
"react-dom": "^17.0.2",
最后,我使用npm install
再次安装了我的包
如果您已经使用React 18
创建,您可以通过几个步骤将版本 18 降级到以前的 react 版本。 您需要在package.json
和index.js
两个文件中进行修改。 您还应该删除node_modules
步骤1
您的index.js
现在可能看起来像这样
import React from "react";
import ReactDOM from "react-dom/client";
import "./index.css";
import App from "./App";
const root = ReactDOM.createRoot(document.getElementById("root"));
root.render(
<React.StrictMode>
<App />
</React.StrictMode>
);
您应该更改ReactDOM
的导入并取消const root
行
index.js
的新代码应该是这样的
import React from "react";
import ReactDOM from "react-dom";
import "./index.css";
import App from "./App";
ReactDOM.render(
<React.StrictMode>
<App />
</React.StrictMode>,
document.getElementById('root')
);
第2步
转到您的package.json
文件并在依赖项中更新所需的反应版本
"dependencies": {
...
"react": "^17.0.0",
"react-dom": "^17.0.0",
...
},
第 3 步
删除你的 node_modules 并且如果你使用的是npm do npm i
。 如果您使用的是yarn ,请执行yarn install
。 在此步骤之后,您可以使用npm start
或yarn start
运行应用程序。
第 4 步(可选:如果您仍有问题,但我不建议这样做)
删除你的package-lock.json
(对于npm )或yarn.lock
文件(对于yarn )并从第 3 步开始
首先创建react app npx create-react-app。 (。表示当前文件)
"@material-ui/core": "^4.12.2", "@material-ui/icons": "^4.11.2", "@testing-library/jest-dom": "^5.14.1", "@testing-library/react": "^11.2.7", "@testing-library/user-event": "^12.8.3", "firebase": "^8.8.0", "firebase-login": "^1.0.0", "firebase-tools": "^9.16.0", "react": "^17.0.2", "react-currency-format": "^1.0.0", "react-dom": "^17.0.2", "react-router-dom": "^5.2.0", "react-scripts": "4.0.3", "web-vitals": "^1.1.2"
根据 react 和 react-dom 的要求版本以及其他要求
(它将根据 package.json 下载所有数据)
ReactDOM.render(`enter code here` <React.StrictMode> <App /> </React.StrictMode>, document.getE1ementById( 'root' ) ); Replace this with const root = ReactDOM.createRoot(document.getElementById('root')); root.render( <React.StrictMode> <App /> </React.StrictMode> );
这个。
npx create-react-app app-name
它总是会安装最新的反应包。 然后,在react 18.2.0
中,与以前的版本有些不同。
您转到文件夹文件结构并删除package-lock.json
( yarn.lock
表示纱线)文件和node_modules
文件。
转到package.json
文件并更改和编辑这些依赖项后:
"react": "^18.2.0",
"react-dom": "^18.2.0",
至
"react": "^17.0.2",
"react-dom": "^17.0.2",
在你的package.json
依赖文件中,像这样。
index.js
文件更改后,import ReactDOM from 'react-dom/client'
至
import ReactDOM from 'react-dom';
index.js
文件并更改索引文件的以下部分后。const root = ReactDOM.createRoot(document.getElementById('root'));
root.render(
<React.StrictMode>
<App />
</React.StrictMode>
);
至
ReactDOM.render(
<React.StrictMode>
<App />
</React.StrictMode>,
document.getElementById('root')
);
terminal
并运行如果您使用的是 npm -->> npm install
在安装部分之后,您可以运行 app npm start
。
或者
如果您使用的是纱线 -->> yarn install
在安装部分之后,您可以运行 app yarn start
。
--谢谢---编码愉快--
首先你必须在你的系统中安装 npm 然后对于创建反应应用程序,你必须在命令下面运行
须藤 npm init react-app my-app --scripts-version 1.1.5
cd 我的应用程序
须藤 npm install --save react@16.0.0
须藤 npm install --save react-dom@16.0.0
这对我来说很有魅力
它对我有用..
运行此命令
npm uninstall react
2.然后安装 React 17.0.2 只需运行此命令即可。
npm install react@17.0.2
要安装 react-dom 17.0.2 版,请运行此命令。
npm install --save react-dom@17.0.2
在创建项目时指定您的脚本版本
须藤 npm init react-app appname --scripts-version 1.0.13
它为我工作
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.