ホームページ ウェブフロントエンド jsチュートリアル 1 つの記事で JSX の原則を理解する (推奨)

1 つの記事で JSX の原則を理解する (推奨)

Jan 06, 2022 pm 03:38 PM
jsx

JSX の原則を理解するには、まず JavaScript オブジェクトを使用して DOM 要素の構造を表現する方法を理解する必要があります。
以下の DOM 構造を見てください:

<div class=&#39;app&#39; id=&#39;appRoot&#39;>
  <h1 class=&#39;title&#39;>欢迎进入React的世界</h1>
  <p>
    React.js 是一个帮助你构建页面 UI 的库
  </p>
</div>
ログイン後にコピー

JavaScript オブジェクトを使用して、上記の HTML 内のすべての情報を表すことができます:

{
  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;]
    }
  ]
}
ログイン後にコピー

しかし、これは JavaScript で記述するには長すぎます。構造も明確ではありませんが、HTML を使用すると非常に便利です。
そこで、React.js は JavaScript の構文を拡張し、JavaScript コードで HTML タグ構造に似た構文を記述できるようにし、より便利になりました。コンパイル プロセスでは、HTML に似た JSX 構造が 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;)
)
ログイン後にコピー

Convert to

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;)
)
ログイン後にコピー

React.createElement は、タグ名、属性、サブ要素などを含む HTML 構造情報を記述する JavaScript オブジェクトを構築します。構文は

React.createElement(
  type,
  [props],
  [...children]
)
ログイン後にコピー
です。

いわゆる JSX は実際には JavaScript オブジェクトであるため、React と JSX を使用する場合はコンパイル プロセスを実行する必要があります

JSX — React を使用してコンポーネントを構築し、babel がそれらをコンパイルします—> JavaScriptオブジェクト— ReactDOM .render() —> DOM 要素—> ページの挿入

推奨学習: 「JS 基本チュートリアル ##」 #"

以上が1 つの記事で JSX の原則を理解する (推奨)の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

Vue が JSX を通じてコン​​ポーネントを動的にレンダリングする方法について話しましょう Vue が JSX を通じてコン​​ポーネントを動的にレンダリングする方法について話しましょう Dec 05, 2022 pm 06:52 PM

Vue はどのようにして JSX を通じてコン​​ポーネントを動的にレンダリングしますか?次の記事では、Vue が JSX を通じてコン​​ポーネントを効率的に動的にレンダリングする方法を紹介します。

Vue の JSX とは何ですか?いつ使用しますか?使い方? Vue の JSX とは何ですか?いつ使用しますか?使い方? Jan 16, 2023 pm 08:23 PM

Vue の JSX とは何ですか?次の記事では、Vue での JSX の概要、JSX を使用するタイミング、Vue2 での基本的な使い方について説明します。

Vue3+ViteでのJSXの使い方を詳しく解説 Vue3+ViteでのJSXの使い方を詳しく解説 Dec 09, 2022 pm 08:27 PM

Vue+Vite で JSX を使用するにはどうすればよいですか? Vue3+Vite での JSX の使い方については以下の記事で紹介していますので、お役に立てれば幸いです。

vue3でjsx構文を使用する方法 vue3でjsx構文を使用する方法 May 12, 2023 pm 12:46 PM

背景: vue3 プロジェクトは、より明確なロジックと容易なメンテナンスを備えた、ビジネスごとに分離された jsx+hooks 形式と組み合わせた、composition-api+setup 形式の使用を促進します。以下の構文は、jsx と template の異なる構文を比較することで、主に同じ機能を実現しています 1. 通常のコンテンツ 通常のコンテンツの定数 書き方は同じです //jsx の書き方 setup(){return()=>hello}/ /tempalte 書き込みメソッド hello 2. 動的変数 jsx では、変数を引用符なしで囲むために中括弧を一律に使用します。たとえば、{age}tempalte の内容は二重中括弧で囲まれ、属性変数はコロンで始まります。たとえば、{ {age}}{} は jsx からのものです。

Vite による Vue3 プロジェクトの作成と Vue3 による jsx の使用方法 Vite による Vue3 プロジェクトの作成と Vue3 による jsx の使用方法 May 22, 2023 pm 01:58 PM

Vite で Vue3 プロジェクトを作成するには、Vite には Node.js バージョン 12.0.0 以上が必要です。 (現在のノードのバージョンを表示するには、node-v) 糸を使用:yarncreate@vitejs/app npmを使用:npminit@vitejs/app1.プロジェクト名を入力してください。ここにプロジェクト名を入力してください:vite-vue32.フレームワークを選択して、フレームワークを選択してくださいフレームワーク: vuevanilla: ネイティブ JS、フレームワークは統合されません vue: vue3 フレームワーク、vue3react のみをサポートします: 反応フレームワーク preact: 軽量反応フレームワーク lit-element: 軽量 we

Vue3でjsx/tsxを使う方法 Vue3でjsx/tsxを使う方法 May 11, 2023 pm 02:07 PM

JSX の使用方法 ここでは、vite プロジェクトを例として取り上げます。プロジェクトで JSX を使用するには、プラグイン @vitejs/plugin-vue-jsx をインストールする必要があります。このプラグインを使用すると、JSX/TSX を使用できるようになります。プロジェクト npmi@vitejs/plugin-vue - -jsx-D のインストールが完了したら、vite.config.ts で import{defineConfig}from"vite";importvuefrom"@vitejs/plugin-vue"; ように設定を行います。 importvueJsxfrom"@

Vue は JSX 構文とコンポーネント プログラミングをどのように実装しますか? Vue は JSX 構文とコンポーネント プログラミングをどのように実装しますか? Jun 27, 2023 am 11:48 AM

Vue は、コンポーネントベースの開発モデルを提供する人気のあるフロントエンド フレームワークです。ただし、Vue は JSX 構文をネイティブにサポートしていませんが、サードパーティのライブラリを使用して JSX 構文とコンポーネント プログラミングを実装できます。 1. JSX とは何ですか? JSX は、JavaScript で HTML に似たコードを記述できる JavaScript の拡張構文です。 React は、JSX 構文を導入した最初のフロントエンド フレームワークであり、JSX 構文を使用することで、より自然で便利な記述が可能になります。

vue3でのJSXの使い方を詳しく解説した記事 vue3でのJSXの使い方を詳しく解説した記事 Nov 25, 2022 pm 09:01 PM

Vue で JSX を使用するにはどうすればよいですか? vue3でのJSXの使い方については以下の記事で紹介していますので、ご参考になれば幸いです。

See all articles