// 方法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 是一种 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…

    分类:
    前端
    标签: