大写开头的JSX,我们称之为组件虚拟DOM;小写开头的JSX,我们称之为元素虚拟DOM。
大写开头的JSX是因为createElement()要求第一个参数必须是类的构造函数,后来扩张到所有函数。
小写开头的JSX要求createElement()的第一个参数必须是HTML标签,后来支持SVG,Math。
Babel 转译器会把 JSX 转换成一个名为 React.createElement() 的方法调用。
下面两种代码的作用是完全相同的:
React.createElement() 这个方法首先会进行一些避免bug的检查,之后会返回一个类似下面
例子的对象:
这样的对象被称为 “React 元素”。它代表所有你在屏幕上看到的东西。React 通过读取这些对象来构建 DOM 并保持数据内容一致。
网友评论