ReactDOM.createRoot().render()作用
时间: 2023-06-07 18:10:21 浏览: 69
ReactDOM.createRoot().render()的作用是渲染一个React根组件,类似于ReactDOM.render()方法,但是在高版本的React中,官方建议使用ReactDOM.createRoot()方法创建与挂载根组件。
相关问题
ReactDOM.createRoot
ReactDOM.createRoot是React框架中的一个API,用于创建一个独立的根节点(Root)。它是React 16版本中引入的新特性,用于替代之前的ReactDOM.render方法。
通过使用createRoot,可以在应用中创建多个独立的根节点。每个根节点代表一个独立的React应用实例,它们可以独立地更新和渲染。
使用方法如下:
```javascript
import ReactDOM from 'react-dom';
const root = ReactDOM.createRoot(document.getElementById('root'));
root.render(<App />);
```
在上面的例子中,我们首先使用createRoot方法创建了一个根节点,并将其绑定到HTML页面中的一个DOM元素上(通过getElementById获取)。然后,我们调用root的render方法,将要渲染的组件(这里是App组件)传递进去。
与之前的ReactDOM.render方法相比,createRoot提供了更好的性能和并发渲染能力。它是React异步渲染模式的基础,可以更好地处理大型应用和复杂UI场景。
main.jsx:5 Warning: ReactDOM.render is no longer supported in React 18. Use createRoot instead. Until you switch to the new API, your app will behave as if it's running React 17. Learn more 代码实例
当你升级到 React 18 版本时,需要使用 `createRoot` API 进行挂载,下面是一个示例代码:
```jsx
import React from "react";
import ReactDOM from "react-dom";
function App() {
return <h1>Hello World!</h1>;
}
const rootElement = document.getElementById("root");
// 使用 createRoot 进行挂载
ReactDOM.createRoot(rootElement).render(<App />);
```
这里使用 `createRoot` API 替代了之前的 `ReactDOM.render` 方法,并将要渲染的组件 `<App />` 作为参数传递给 `render` 方法。