ReactJS 教程

ReactJS 主页 ReactJS 简介 ReactJS 路线图 ReactJS 下载安装和环境配置 ReactJS 功能 ReactJS 优势和缺点 ReactJS 架构 ReactJS 创建 React 应用程序 ReactJS JSX ReactJS 组件 ReactJS 嵌套组件 ReactJS 使用组件 ReactJS 集合组件 ReactJS 样式 ReactJS 属性 (props) ReactJS 使用属性创建组件 ReactJS props 验证 ReactJS 构造函数 ReactJS 组件生命周期 ReactJS 事件管理 ReactJS 创建事件感知组件 ReactJS Expense Manager 事件 ReactJS 状态管理 ReactJS 状态管理 API ReactJS 无状态组件 ReactJS Hooks 进行状态管理 ReactJS Hooks 的组件生命周期 ReactJS 布局组件 ReactJS 分页 ReactJS Material UI ReactJS Http 客户端编程 ReactJS 表单编程 ReactJS 受控组件 ReactJS 非受控组件 ReactJS Formik ReactJS 条件渲染 ReactJS 列表 ReactJS Key 键 ReactJS 路由 ReactJS Redux ReactJS 动画 ReactJS Bootstrap ReactJS Map ReactJS 表格 ReactJS 使用 Flux 管理状态 ReactJS 测试 ReactJS CLI 命令 ReactJS 构建和部署 ReactJS 示例

Hooks

ReactJS Hooks 简介 ReactJS 使用 useState ReactJS 使用 useEffect ReactJS 使用 useContext ReactJS 使用 useRef ReactJS 使用 useReducer ReactJS 使用 useCallback ReactJS 使用 useMemo ReactJS 自定义 Hooks

ReactJS 高级

ReactJS 可访问性 ReactJS 代码拆分 ReactJS 上下文 ReactJS 错误边界 ReactJS 转发 Refs ReactJS 片段 ReactJS 高阶组件 ReactJS 与其他库集成 ReactJS 优化性能 ReactJS Profiler API ReactJS Portals ReactJS 不使用 ES6 ECMAScript ReactJS 不使用 JSX 的 React ReactJS Reconciliation ReactJS Refs 和 DOM ReactJS 渲染道具 ReactJS 静态类型检查 ReactJS 严格模式 ReactJS Web 组件

其他概念

ReactJS 日期选择器 ReactJS Helmet ReactJS 内联样式 ReactJS PropTypes ReactJS BrowserRouter ReactJS DOM ReactJS 轮播 ReactJS 图标 ReactJS 表单组件 ReactJS 参考 API

ReactJS 有用资源

ReactJS 快速指南 ReactJS 备忘录 Axios 备忘录 ReactJS 有用资源 ReactJS 讨论


ReactJS - createRoot() 方法

createRoot 是 React 的重要组成部分,React 是一个重要的 Web 开发框架。它允许我们将 React 代码快速集成到网页中。它就像我们 React 项目的核心,我们所有的 Web 功能都保存在这里。我们还可以改变它的工作方式来改进我们的 Web 应用程序。因此,我们将看到 createRoot 的重要性。

因此,createRoot 允许我们在网页中设置一个特殊位置,我们可以在其中显示我们的 React 内容。

当我们使用 createRoot 时,它会为我们提供一个可以挂载 React 组件的新容器元素。这在我们希望应用程序中的独立部分不会相互干扰的情况下非常有用。

语法

下面是如何使用的示例 −

  • 使用它在我们的网页上为我们的 React 代码创建一个特殊位置。

const root = createRoot(domNode,optionalObject)
  • 使用它来实际显示我们使用 React 创建的内容。

root.render(reactNode)
  • 使用它来实际显示我们使用React。

root.render(reactNode)
  • 如果我们想将 React 代码从网页中移除,可以使用它。

root.unmount()

参数

  • domNode − 这是网页的一部分,就像一个框,React 会将我们的代码放在这里。我们可以使用它来做一些事情,比如展示我们用 React 制作的东西。

  • 可选选项 −如果需要,我们可以使用它来自定义我们的 React 代码在该框中的工作方式。

  • reactNode − 它就像我们想要使用 React 显示的东西。

返回值

createRoot 返回的对象有两种方法:render 和 unmount。root.render 和 root.unmount 返回未定义。

示例

因此我们可以以三种不同的方式使用 createRoot −

通过渲染完全使用 React 构建的应用程序 − 如果我们的整个 Web 应用程序都是使用 React 制作的,我们可以使用"createRoot"在 Web 上显示整个内容。

示例 1

App.js

import { useState } from 'react';

function CountFunc() {
  const [counter, setCounter] = useState(0);
  return (
    <button onClick={() => setCounter(counter + 1)}>
      This button is clicked {counter} times
    </button>
  );
}

export default function App() {
  return (
    <>
      <h1>Hello, Tutorialspoint!</h1>
      <CountFunc />
    </>
  );
}

index.js

import { createRoot } from 'react-dom/client';
import App from './App.js';
import './styles.css';

const root = createRoot(document.getElementById('root'));
root.render(<App />);

输出

hello tutorialspoint

渲染部分使用 React 创建的页面− 有时,我们可能只想将 React 用于网页的一部分。在这种情况下,我们可以使用"createRoot"来仅显示该部分。

示例 2

App.js

import React, { useState } from "react";
import "./App.css";

function App() {
  const [todos, setTodos] = useState([
    { id: 1, text: "Buy cloths" },
    { id: 2, text: "Finish work" },
    { id: 3, text: "Go for a run" }
  ]);

  return (
    <div className="App">
      <h1>ToDo List</h1>
      <ul>
        {todos.map((todo) => (
          <li key={todo.id}>{todo.text}</li>
        ))}
      </ul>
    </div>
  );
}

export default App;

index.js

import React from "react";
import ReactDOM from "react-dom";
import App from "./App";

const rootDomNode = document.getElementById("root");
const root = ReactDOM.createRoot(rootDomNode);
root.render(<App />);

输出

todo list

这是一个显示待办事项列表的简单 React 应用。我们可以修改或自定义此程序以满足我们的需求,添加添加和删除项目、日期等功能。

更新根组件 − 如果我们想使用 React 更改网页上已显示的内容,我们可以使用 createRoot 来执行此操作,而无需更改页面的其他部分。

示例 3

App.js

export default function App({counter}) {
  return (
    <>
      <h1>Hello, Tutorialspoint! {counter}</h1>
      <input placeholder="Type something here" />
    </>
  );
}

index.js

import { createRoot } from 'react-dom/client';
import './styles.css';
import App from './App.js';

const root = createRoot(document.getElementById('root'));

let i = 0;
setInterval(() => {
  root.render(<App counter={i} />);
  i++;
}, 1000);

输出

hello tp 4

我们可以在同一个根上多次调用 render。

总结

React JS 中的 createRoot 函数是一种为我们的组件创建新渲染区域的方法。它允许我们通过创建一个新的根 ReactDOM 渲染树在我们的应用程序中拥有独立的部分。这有助于保持我们应用程序的不同部分井然有序且相互隔离。简而言之,它提供了一个干净的平台来在单独的容器中渲染组件。

reactjs_reference_api.html