メンバー
AppRouter
- ディレクトリ構成について
- ルールが決まることによるメリット
- チーム開発でコーディング規約などの制約が立てやすい
- 記述場所が決まっているので特定箇所に偏った肥大化を防げる
- RSCの恩恵を受けやすい
- 今後 App Router が主流になって来たときにリプレイスする事になるなら先に採用しておく
- 実際のプロジェクトで採用した結果、普通に問題なく動いているとの話もあり
- 留意:App Router (ベータ版)のドキュメントには下記の記述あり
- 「App Router は現在ベータ版であり、本番環境での使用はお勧めしません。」
- 現在開発中の機能もあり(mutatingなど)
- クラインとサイドの負荷は減るが、設計やサーバー再度の負荷が上がりそう
ReactServersideComponents(RSC)
Data Fetching: Fundamentals | Next.js
コンポーネントのレンダリングや、それに係るデータフェッチをサーバー上で行うコンポーネント
SSRと何が違う:SSRはレンダリング結果と共ににコンポーネントのJSをクライアントへ送信するが、RSCはJSをクライアントへ送信せず、レンダリング結果のみを送信する
Rendering: Server and Client Components | Next.js
これにより:
- レンダリング処理がサーバー内で完結するので、
- AWSのキーとかのまずい情報をコンポーネントで直接扱える
- バンドルサイズとか気にせずライブラリを使いまくれる(lodashを細切れにしなくてよい)
- データフェッチのための通信が、少なくともクライアントから直接叩くよりは早い