图片来源于互联网
当在控制台打印一个 React 组件的时候,能看出组件就是一个对象,也可以说是虚拟 dom,这个对象上面包含了所需要渲染的 dom 节点的标签名称、属性、子节点等信息。同时也有一个 $$typeof 的属性。
$$typeof 是如何添加在 React 对象上的
jsx 语法在被 babel 解析的时候调用 React.createElement 方法,那么我们看一下 createElement 方法的实现
export function createElement(type, config, children) {
...
return ReactElement(
type,
key,
ref,
self,
source,
ReactCurrentOwner.cur