React
エンジニアのためのWebチートシート
Reactは、Facebookとそのコミュニティによって開発されているユーザインタフェースを構築するためのJavaScriptライブラリです。React.jsまたはReactJSの名称としても知られています
インストール
React導入(npm)
React導入(yarn)
React導入(CDN)
Viteでプロジェクト作成
Next.jsでプロジェクト作成
コンポーネント
関数コンポーネント
function(関数)としてコンポーネントを定義します。
アロー関数コンポーネント
アロー関数を使用してコンポーネントを定義することもできます。
入れ子(ネスト)構造
定義したReactコンポーネントを入れ子にすることができます。
レンダリング(React 18)
createRoot()を使用してコンポーネントをDOMにレンダリングします。
JSX
条件付きレンダリング
&&演算子や三項演算子を使って条件付きでレンダリングできます。
リストのレンダリング
map()を使用してリストをレンダリングします。各要素には一意のkeyが必要です。
フラグメント
余分なDOMノードを追加せずに複数の要素をグループ化できます。
Props
Propsの基本
親コンポーネントから子コンポーネントにデータを渡すことができます。
分割代入パターン
引数で直接propsを分割代入することで、よりシンプルに記述できます。
children
childrenを使用するとコンポーネントの子要素を受け取ることができます。
イベント
onClick(クリックイベント)
クリックイベントを処理します。
onChange(フォーム入力)
フォーム入力の値をstateで管理します。
onSubmit(フォーム送信)
フォームの送信を処理します。
状態管理 - useState
useStateの基本
useState Hookを使用してコンポーネントの状態を管理します。
オブジェクトの状態更新
オブジェクトをstateで管理する場合は、スプレッド構文で新しいオブジェクトを作成します。
複数のstate
複数のuseStateを使用して複数の状態を管理できます。
副作用 - useEffect
マウント時の処理
空の依存配列を渡すと、コンポーネントのマウント時に一度だけ実行されます。
依存配列
依存配列に値を指定すると、その値が変更されるたびに実行されます。
クリーンアップ関数
関数を返すとアンマウント時や再実行前にクリーンアップ処理を行えます。
Hooks一覧
Reactで使用できる主なHooksの一覧です。
| Hook | 用途 |
|---|---|
useState | 状態管理 |
useEffect | 副作用(データ取得、購読など) |
useContext | Contextの値を取得 |
useReducer | 複雑な状態ロジック |
useCallback | コールバック関数のメモ化 |
useMemo | 計算結果のメモ化 |
useRef | 可変参照(DOMアクセスなど) |
useId | 一意のID生成(React 18+) |
useTransition | UI遷移の優先度管理(React 18+) |
Context API
Context APIの使用
Context APIを使用してコンポーネントツリー全体にデータを共有できます。
パフォーマンス最適化
React.memo
コンポーネントをメモ化して、propsが変わらない場合の再レンダリングを防ぎます。
useMemo
計算コストの高い値をメモ化します。
useCallback
コールバック関数をメモ化して、子コンポーネントへの不要な再レンダリングを防ぎます。
Suspense
Code Splitting(lazy)
lazy()とSuspenseを使用してコンポーネントを遅延ロードできます。
useTransition
useTransitionを使用して、UIの応答性を維持しながら状態を更新できます。
Related Goods
WebTerm - Recommended tools
WebTermは、ブラウザでLinuxコマンド・Gitコマンドを安全に実行でき、チュートリアル式で学べるターミナルサンドボックスです。
AIコーディングツールの普及に伴い、CLIの基礎知識を身につける重要性は増しています。実際のターミナルを操作するのに抵抗がある方でも、WebTermはローカル環境を壊す心配がありません。「会員登録不要・無料」で利用でき、学習環境として最適です。

WebTerm
Browser Terminal Sandbox for Learning CLI
開く
All Cheatsheets
エンジニア・プログラマー向けの便利なチートシートを多数まとめています(SP/Tablet/PC対応)
すべてのチートシートを見る

