1
0
Fork 0
Obsidian 管理的个人笔记仓库
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 

852 B

深入理解 JSX

/**
 * type JSX 的类型
 * config JSX 中的属性
 * children JSX 的子元素
 */
React.createElement(type, config, children)
  • 有对应 DOM 节点的元素在 React 中被称为 Host Component
  • createElement 方法最后会调用 ReactElement 方法,这个方法会返回一个对象,对象中有 $$typeof 属性并且值为 REACT_ELEMENT_TYPE
  • React 中有一个 isValidElement 方法,这个方法用于判断 React Element 是否合法:类型需要是 object、不能是 null 、并且 $$typeof 为 REACT_ELEMENT_TYPE
  • 所有 createElement 方法返回的结果,就是一个 React Element

小结

  1. 什么是 ReactElement? ReactElement 就是通过调用 React.createElement 方法返回的结果
  2. 什么是 ReactComponents 就是 Function Components 和 Class Components 本身