我最近切换到了 React 18,还发现 reactDOM.render 已经被贬值了。 我相应地进行了更改,现在我的 index.js 看起来像
import React from "react";
import { createRoot } from "react-dom/client";
import "./index.css";
import { ChakraProvider } from "@chakra-ui/react";
import App from "./App";
const root = createRoot(document.getElementById("root"));
root.render(
<React.StrictMode>
<ChakraProvider>
<App />
</ChakraProvider>
</React.StrictMode>
);
反应应用程序工作正常,但每次重新渲染我的应用程序时都会生成此错误以进行控制台。 我尝试通过以下方式解决此问题:-
const root = ReactDOM.createRoot(document.getElementById('root'));
package-lock.json
,然后重新安装。警告:React 18 中不再支持 ReactDOM.render。请改用 createRoot。在您切换到新 API 之前,您的应用程序的行为就像运行 React 17 一样。
这可能是版本问题吗,因为我的应用程序不受此警告的影响? 我正在开发这些版本
"react": "^18.2.0",
"react-chips": "^0.8.0"
"react-dom": "^18.2.0",
但是如果有人知道的话请帮助我,这有点烦我。
谢谢你
更新@chakra-ui/react的版本。旧版本不适用于react18。新版本的@chakra-ui/react后错误将消失。