Skip to content

S13-08 React-API

[TOC]

React

组件实例app

jsx
class App extends React.Component {
    constructor() {
+    	this.state = {
            xxx: 'yyy'
        }
    }
    hdlFn() {
+        this.setState({
            xxx: 'zzz'
        })
    }
}
const app = new App()

app.state

app.setState()

基类组件

Component

PureComponent

react内置组件

Fragment

StrictMode

高阶组件

forwardRef

memo

ReactDOM

根节点root

jsx
const root = ReactDOM.createRoot(document.querySelector('#root'))
root.render(<App/>)
root.unmount()

root.render()

语法:

root.render(reactNode)返回:undefined,将一段 JSX(“React 节点”)在 React 的根节点中渲染为 DOM 节点并显示

  • 参数:
  • reactNode:``,要显示的React节点。可以是:组件、createElement元素、字符串、数字、null、undefined
  • 返回值: undefined

注意:

  • 首次调用 root.render 时,React 会先清空根节点中所有已经存在的 HTML,然后才会渲染 React 组件。
  • 如果你的根节点包含了由 React 在构建期间通过服务端渲染生成的 HTML 内容,请使用hydrateRoot()替代这个方法,这样才能把事件处理程序和现有的 HTML 绑定。
  • 如果你在一个根节点上多次调用了 render,React 仍然会更新 DOM,这样才能保证显示的内容是最新的。React 将会筛选出可复用的部分和需要更新的部分,对于需要更新的部分,是 React 通过与之前渲染的树进行 “比较” 得到的。在同一个根节点上再次调用 render 就和在根节点上调用 set 函数 类似:React 会避免没必要的 DOM 更新。

root.unmount()

工具类

createElement

cloneElement

createContext

Children

Children.map
Children.forEach
Children.count
Children.toArray
Children.only

createFactory

createRef

isValidElement

Hooks

useState

useReducer

userImperativeHandle

useMemo

useRef

useEffect

useDebugValue

useTransition

useContext

useCallback

useLayoutEffect

ReactDOM

createRoot

render

hydrate

usestable_batchedUpdates

flushSync

findDOMNode

unmountComponentAtNode

createPortal

创建React

  • createRoot(domNode, options?)返回:
    • **参数 **
    • domNode:``,
    • options返回:

:``,

返回: