スタートページ>
Javascript>
React
Reactの概要
←文法の基本(1)
ここでは、CodeSandbox で前回で設定した環境を用いて、いくつかの解説Webサイトの例をコピペしながら理解した内容を整理したものです。
理解している事項があまりにも乏しく、次のようなことすらできていません。
次の 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ファイルは同じ処理をしています。
●通常記述 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 部品; |
import "./styles.css"; export default function 部品() { const 変数 = "CodeSandbox"; // export 文の上でもよい return ( <div> <h1 className="red">ようこそ</h1> <p>{変数} へ</p> </div> ); }
ここまでの知識で作成できる例を列挙します。
相手のファイルを登録していないので、実行結果が示せないのですが・・・
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> ) }
ボタンを表示し、クリックすると関数が呼び出されます。
const 関数 = () => { return ( <h4>ボタンがクリックされました。</h4> ); }; export default ボタン部品 = () => { return ( <div> <button onClick={関数}>関数実行</button> <p>クリックするとこの下に関数結果が表示されます。</p> <関数 /> </div> ); };