Vite + TanStack Router - 1. セットアップ
[vite]
[TanStack]
[TanStack Router]
TanStack RouterはTanStack Query(a.k.a. React Query) の開発元が作ったルーティングライブラリです。
ファイルベースの直感的なルート作成、自動コード分割、データローダー、TypeScript対応といった特徴があります。 また、先ごろベータ版が公開されたメタフレームワークTanStack Startのベースにもなっています。
今回から数回にわけて今注目のルーティングライブラリTanStack Routerの勘所を紹介します。
初回はセットアップの仕方です。
その後まずはルーティングライブラリの基本
- 各種ルートの作成
- リンクの作成、ページ遷移の方法
- パラメータの取り扱い
をおさえ、次に以下に挙げるTanStack Routerの便利な機能を紹介していきます。
- コード分割
- データローダー
- RouterContext
- DevTools
セットアップ
- viteでプロジェクト初期化
- TanStack Routerをインストール
vite.config.ts
にプラグインの設定を追加
npm run dev
を実行 ← ここ重要src/routes/__root.tsx
ファイルを作成すると、自動でファイルに以下の内容が書き込まれます
<Outlet />
コンポーネントがあるところに他のルートが表示されます。
<Outlet />
コンポーネントは __root.tsx
以外のどのファイルでも使えます。
また、ルートの component
プロパティを指定しないと、自動で <Outlet />
が指定されたことになります。
App.tsx
でRouterを読み込み
src/routes/index.tsx
を作成すると、自動で以下の内容が書き込まれます。
http://localhost:5173
にアクセスすると__root.tsx
とroutes/index.tsx
の内容が表示されます。
以上でTanStack Routerをセットアップし、最初のルートを表示することができました。
まとめ
routes/
ディレクトリ以下に置いたファイルがルートになるrouteTree.gen.ts
ファイルは自動生成されるので自分では作成・編集しないroutes/__root.tsx
ファイルがすべてのルートの根本になる。全ページで共通のレイアウトを採用する場合はここにレイアウトを書ける<Outlet />
コンポーネントが各ルートに置き換わる