JSX 本质
JSX 仅仅是 React.createElement(type, config, children) 函数的语法糖。
注:语法糖(Syntactic sugar),指计算机语言中添加的某种语法,这种语法对语言的功能没有影响,但是更方便程序员使用。语法糖让程序更加简洁,有更高的可读性。
所有的 JSX 最后会被转换为 React.createElement() 的函数调用。
转换示例:
JSX代码:
<div>
<p>plan01:</p>
<h2>{
this.state.message}</h2>
<ul>{
moviesList}</ul>
<p>plan02:</p>
<h2>{
this.state.message}</h2>
<ul>
{
this.state.moviesList.map(item => {
return <li>{
item}</li>;
})}
</ul>
</div>
对应的 React.createElement() 书写方式:
/*#__PURE__*/
React.createElement