自動コード分割
React Router のフレームワーク機能を使用すると、アプリケーションは自動的にコード分割され、ユーザーがアプリケーションにアクセスした際の初期ロード時間のパフォーマンスが向上します。
ルートによるコード分割
このシンプルなルート設定を考えてみましょう。
すべてのルートを単一の巨大なバンドルにまとめる代わりに、参照されるモジュール (contact.tsx
と about.tsx
) がバンドラーのエントリーポイントになります。
これらのエントリーポイントは URL セグメントに結び付けられているため、React Router は URL からブラウザでどのバンドルが必要か、さらに重要なことに、どれが必要でないかを把握できます。
ユーザーが "/about"
にアクセスした場合、about.tsx
のバンドルはロードされますが、contact.tsx
はロードされません。これにより、初期ページロードの JavaScript フットプリントが大幅に削減され、アプリケーションが高速化されます。
サーバーコードの削除
サーバー専用のルートモジュール API は、バンドルから削除されます。このルートモジュールを考えてみましょう。
ブラウザ用にビルドした後、Component
のみがバンドルに残るため、他のモジュールエクスポートでサーバー専用のコードを使用できます。