React 创建元素

1,735 阅读1分钟

原生js创建:document.createElement


// 方法1:document.createElement
const title = document.createElement('h1');
title.innerText='Hello React (method 1)';
title.className='main';
document.getElementById('root').appendChild(title);

React.createElement

用 React 的 createElement 来创建 React DOM。

// 方法2:React.createElement
import React from 'react';
import ReactDOM from 'react-dom';

const title = React.createElement("h1", {className: "main"}, "Hello React (method 2)");

ReactDOM.render(title, document.getElementById('root'));

其中 createElement(a, b, c)

  • 第一个参数 a:表示元素的类型,比如:h1, div 等。
  • 第二个参数 b:表示该元素上的属性,使用 JavaScript 对象方式表示。
  • 第三个参数 c:表示该元素内部的内容,可以是文字,可以继续嵌套另外一个 React.createElement(a, b, c)

这种方法其实在实际 React 开发中几乎不会使用,因为可以直接 JSX 方法。

JSX

JSX 是一种 JavaScript 的语法糖。

Facebook 开发JSX出来,主要用于 React 中。虽然 JSX 的内容会长得像 html,但还是 JavaScript。

代码如下:

// 方法3:JSX
import React from 'react';
import ReactDOM from 'react-dom';

const title = (
  <h1>Hello React (method 3)</h1>
);

ReactDOM.render(title, document.getElementById('root'));



参考链接:www.jianshu.com/p/42a3ec621…