使用create react应用程序并更新索引后.jsreact 域.render to React 18我收到以下错误:"警告:您正在从不受支持的'React dom'导入createRoot.您应该从'React dom/client'导入它.".

指数js:

import React from 'react';
import ReactDOM from 'react-dom';
import { createRoot } from 'react-dom/client';
import Switch from './components/Switch';

const root = ReactDOM.createRoot(document.getElementById('root'));
root.render(
  <React.StrictMode>
    <Switch />
  </React.StrictMode>
);

推荐答案

最近,在React 18 RC(RC 1)和Source中,createRoot已被移动到react-dom/client

所以,现在你可以这样做:

import * as ReactDOMClient from 'react-dom/client';
ReactDOMClient.createRoot(/*...*/);

对你来说,这应该是

import React from 'react';
import ReactDOM from 'react-dom';
import * as ReactDOMClient from 'react-dom/client';
import Switch from './components/Switch';

const root = ReactDOMClient.createRoot(document.getElementById('root'));
root.render(
  <React.StrictMode>
    <Switch />
  </React.StrictMode>
);

动机:这种变化有两个原因.

首先,它允许组件使用同构API,例如

其次,它创建了与react dom/server的奇偶校验

Reactjs相关问答推荐

为多租户SSO登录配置Azure AD应用程序

无法在主组件的返回语句中呈现预期组件

在Reaction中的第一次装载时,Use Effect返回空数组

使用Ionic 7和React 18,如何访问历史对象以在页面之间导航?

Reaction路由-如何在布局路由内呈现&q;/:id&q;路由

为什么在页面重新加载时Location.State变得未定义?

蚂蚁 Select .列表弹出窗口不会';有时不会出现

如何在我的 React 应用程序中仅显示我的 Register 组件

.populate() 方法在 mongodb 中不起作用

使用获取的数据更新状态,但在try console.log 时它给出未定义

Reactjs:MUI5:MobileDateTimePicker API:如何自定义日历中的文本

React - 函数组件 - 点击两次问题处理

FlatList 不在 React Native 中呈现项目

类型错误:类型typeof import(js-cookie)上不存在属性get

当每个元素都可拖动时,移动设备上的滚动列表出现问题

将 useState 设置为组件内部的值

react 事件顺序

Mui CardMedia 的图片组件

React 中的 Slide API Mui 在开始而不是结束时触发侦听器

如何在 React 中的 Material Ui 多选中设置默认值?