Ketahui prinsip JSX dalam satu artikel (disyorkan)

藏色散人
Lepaskan: 2022-01-14 09:04:53
ke hadapan
1605 orang telah melayarinya

Untuk memahami prinsip JSX, anda perlu terlebih dahulu memahami cara menggunakan objek JavaScript untuk mewakili struktur elemen DOM.
Lihat struktur DOM berikut:

<div class=&#39;app&#39; id=&#39;appRoot&#39;>
  <h1 class=&#39;title&#39;>欢迎进入React的世界</h1>
  <p>
    React.js 是一个帮助你构建页面 UI 的库
  </p>
</div>
Salin selepas log masuk

Kami boleh menggunakan objek JavaScript untuk mewakili semua maklumat dalam HTML di atas:

{
  tag: &#39;p&#39;,
  attrs: { className: &#39;app&#39;, id: &#39;appRoot&#39;},
  children: [
    {
      tag: &#39;h1&#39;,
      attrs: { className: &#39;title&#39; },
      children: [&#39;欢迎进入React的世界&#39;]
    },
    {
      tag: &#39;p&#39;,
      attrs: null,
      children: [&#39;React.js 是一个构建页面 UI 的库&#39;]
    }
  ]
}
Salin selepas log masuk

Tetapi ini terlalu panjang untuk ditulis dalam JavaScript , dan strukturnya tidak jelas, sangat mudah untuk menggunakan HTML.
Jadi React.js mengembangkan sintaks JavaScript untuk membenarkan penulisan sintaks yang serupa dengan struktur teg HTML dalam kod JavaScript, yang jauh lebih mudah Proses penyusunan akan menukar struktur JSX yang serupa dengan HTML kepada objek JavaScript.

import React from &#39;react&#39;
import ReactDOM from &#39;react-dom&#39;

class App extends React.Component {
  render () {
    return (
      <p className=&#39;app&#39; id=&#39;appRoot&#39;>
        <h1 className=&#39;title&#39;>欢迎进入React的世界</h1>
        <p>
          React.js 是一个构建页面 UI 的库
        </p>
      </p>
    )
  }
}

ReactDOM.render(
    <App />,
  document.getElementById(&#39;root&#39;)
)
Salin selepas log masuk

ditukar kepada

import React from &#39;react&#39;
import ReactDOM from &#39;react-dom&#39;

class App extends React.Component {
  render () {
    return (
      React.createElement(
        "p",
        {
          className: &#39;app&#39;,
          id: &#39;appRoot&#39;
        },
        React.createElement(
          "h1",
          { className: &#39;title&#39; },
          "欢迎进入React的世界"
        ),
        React.createElement(
          "p",
          null,
          "React.js 是一个构建页面 UI 的库"
        )
      )
    )
  }
}

ReactDOM.render(
    React.createElement(App),
  document.getElementById(&#39;root&#39;)
)
Salin selepas log masuk

React.createElement akan membina objek JavaScript untuk menerangkan maklumat struktur HTML anda, termasuk nama teg, atribut, sub-elemen, dsb. Sintaksnya ialah:

React.createElement(
  type,
  [props],
  [...children]
)
Salin selepas log masuk

Yang dipanggil JSX sebenarnya adalah objek JavaScript, jadi apabila menggunakan React dan JSX, anda mesti melalui proses penyusunan

JSX — gunakan react untuk membina komponen dan babel untuk kompilasi —> Objek JavaScript — ReactDOM.render() —> Sisipkan halaman

Pembelajaran yang disyorkan: "tutorial asas js"

Atas ialah kandungan terperinci Ketahui prinsip JSX dalam satu artikel (disyorkan). Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
jsx
sumber:segmentfault.com
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!