スタートページJavascriptReact
Reactの概要
←文法の基本(1)

React文法の基本(1)


お詫び

ここでは、CodeSandbox で前回で設定した環境を用いて、いくつかの解説Webサイトの例をコピペしながら理解した内容を整理したものです。
理解している事項があまりにも乏しく、次のようなことすらできていません。


基本文法

import 外部からのコンポーネント取得

次の input ファイルは、同じ処理をしています。

●{ } なし
1 import React from "react";
2 import ReactDOM from "react-dom";
3 import 表示部品 from "./App";
4 const コンテナ = document.getElementById("root");
5 const 表示場所 = ReactDOM.createRoot(コンテナ);
6 表示場所.render(
7   <React.StrictMode>
8     <表示部品 />
9   </React.StrictMode>
10 );
  
●{ } あり
import { StrictMode } from "react";
import { createRoot } from "react-dom/client";
import 表示部品 from "./App";
const コンテナ = document.getElementById("root");
const 表示場所 = createRoot(コンテナ);
表示場所.render(
  <StrictMode>
    <表示部品 />
  </StrictMode>
);

表示部品と表示場所の結びつけ

以下のステップで、表示部品と表示場所の結びつけているようなのですが、私には理解ができないので、説明は省略します。

4 const コンテナ = document.getElementById("root");
5 const 表示場所 = ReactDOM.createRoot(コンテナ);
6 表示場所.render(
7   <React.StrictMode>
8     <表示部品 />
9   </React.StrictMode>
10 );

Appファイルの変形

次の Appファイルは同じ処理をしています。

●通常記述
import "./styles.css";
export default function 部品() {
  return (
    <div>
      <h1 className="red">ようこそ</h1>
      <p>CodeSandbox へ</p>
    </div>
  );
}
●アロー関数表示(1)
import "./styles.css";
export default 部品 = () => {
  return (
     <div>
       <h1 className="red">ようこそ</h1>
       <p>CodeSandboxへ</p>
     </div>
  );
}
●アロー関数表示(2)
import "./styles.css";
const 部品 = () => {
  return (
    <>
      <h1 className="red">ようこそ</h1>
      <p>CodeSandboxへ</p>
    </>
  );
  export default 部品;

return 表示コンポーネントの設定

変数を含む文

    import "./styles.css";
    export default function 部品() {
      const 変数 = "CodeSandbox";  // export 文の上でもよい
      return (
        <div>
          <h1 className="red">ようこそ</h1>
          <p>{変数} へ</p>
        </div>
      );
    }

className

export default コンポーネントの index への引き渡し


応用例

ここまでの知識で作成できる例を列挙します。

<img ~ >, <a href ~ >

相手のファイルを登録していないので、実行結果が示せないのですが・・・

export default 部品 = () => {
  return (
    <div>
        <p>画像の説明文</p>
        <img src= '画像.jpeg' /><br />
        <a href="リンク先.html">リンク</a>
    </div>
  )
}

次のようにも記述できます。

export default 画像 = () => {
  const 説明文  = '画像の説明文';
  const 画像URL = '画像.jpeg';
  const リンク先 = 'リンク先.html':
  return (
      <div>
          <p>{説明文}</p>
          <img src= {画像URL} /><br />
          <a href= {リンク先}</a>
      </div>
  )
}

button

ボタンを表示し、クリックすると関数が呼び出されます。

    const 関数 = () => {
      return (
        <h4>ボタンがクリックされました。</h4>
      );
    };
    export default ボタン部品 = () => {
      return (
        <div>
          <button onClick={関数}>関数実行</button>
          <p>クリックするとこの下に関数結果が表示されます。</p>
          <関数 />
        </div>
      );
    };