差分
このページの2つのバージョン間の差分を表示します。
両方とも前のリビジョン 前のリビジョン 次のリビジョン | 前のリビジョン | ||
JavaScript:React [2022/11/29 23:51] – 削除 - 外部編集 (Unknown date) 127.0.0.1 | JavaScript:React [2025/04/12 05:15] (現在) – 外部編集 127.0.0.1 | ||
---|---|---|---|
行 1: | 行 1: | ||
+ | # React | ||
+ | - [[.React: | ||
+ | - [[.React: | ||
+ | - [[.React: | ||
+ | - [[.React: | ||
+ | |||
+ | ### React Router | ||
+ | |||
+ | 参考サイト:[[https:// | ||
+ | |||
+ | ##### 概要 | ||
+ | 「**React Router**」とは、Reactを用いて作成したSPA(※)に対して、UIとURLを対応付けるためのライブラリである。 | ||
+ | |||
+ | ※SPA・・・Single Page Application | ||
+ | |||
+ | ##### ライブラリ | ||
+ | |||
+ | ^ ライブラリ名 | ||
+ | | react-router | ||
+ | | **react-router-dom** | ||
+ | | react-router-native | ||
+ | |||
+ | 「react-router-dom」は「react-router」の上位互換のようなものであるため、 | ||
+ | |||
+ | 基本的には「react-router-dom」を使用すればよい。 | ||
+ | |||
+ | |||
+ | ##### Routerの種類 | ||
+ | |||
+ | ^ 種類 | ||
+ | | BrouwerRouter | ||
+ | | HashRouter | ||
+ | | MemoryRouter | ||
+ | |||
+ | ### 環境構築 | ||
+ | |||
+ | ##### npm start のポート番号を変更 | ||
+ | |||
+ | 2種類の方法で変更できる。 | ||
+ | |||
+ | --- | ||
+ | |||
+ | 1.環境変数'' | ||
+ | |||
+ | たとえば、4000番を指定する場合は下記のように実行する。 | ||
+ | |||
+ | < | ||
+ | $ PORT=4000 npm start | ||
+ | </ | ||
+ | |||
+ | --- | ||
+ | |||
+ | 2.プロジェクトルートに'' | ||
+ | |||
+ | .envファイルに以下のように記載して、'' | ||
+ | |||
+ | <code conf> | ||
+ | PORT=4000 | ||
+ | </ | ||
+ | --- | ||
+ | 参考サイト:[[https:// | ||
+ | |||
+ | |||
+ | ### react プロジェクト作成 | ||
+ | |||
+ | 下記のコマンドを実行する。 | ||
+ | |||
+ | ``` | ||
+ | $ npx create-react-app <project name> --template=typescript | ||
+ | ``` | ||
+ | |||
+ | バージョンを指定することも可能である。 | ||
+ | |||
+ | ``` | ||
+ | $ npx create-react-app@< | ||
+ | ``` | ||
+ | |||
+ | 指定できるバージョンは下記コマンドを実行。 | ||
+ | |||
+ | ``` | ||
+ | $ npm info create-react-app versions | ||
+ | ``` | ||
+ | |||
+ | 参考:https:// | ||
+ | |||
+ | ### 関数コンポーネントの型定義 | ||
+ | |||
+ | 引数(props)を受け取る場合の型定義は下記の2種類がある。 | ||
+ | |||
+ | - 引数に直接型注釈を指定するパターン | ||
+ | - ジェネリック型 | ||
+ | |||
+ | ``` | ||
+ | // props に直接型注釈を指定するパターン | ||
+ | const SampleComponent3 = (props: Foge) => { | ||
+ | return < | ||
+ | }; | ||
+ | |||
+ | // React.FC< | ||
+ | const SampleComponent4: | ||
+ | return < | ||
+ | }; | ||
+ | |||
+ | |||
+ | const Parent: FC = () => { | ||
+ | return ( | ||
+ | <> | ||
+ | < | ||
+ | < | ||
+ | </> | ||
+ | ); | ||
+ | }; | ||
+ | ``` | ||
+ | |||
+ | |||
+ | 参考:[[https:// |