ページ内ナビ
概要
TanStack Routerは、URLの経路、検索条件、データ読み込み、画面遷移を型でつなぐReact向けルーターです。リンク先や検索値の誤りを開発時に見つけやすくし、利用者がURLを共有できる画面状態を組み立てられます。
特徴と向いている用途
実機検証あり(下記の環境・範囲に限定) · 内容確認日:
主な特徴
向いている用途
導入前の確認
1.170.41 / macOS, Node.js 26.7.0, isolated temporary npm project
Executed the pinned @tanstack/react-router API example and verified /products page=2 followed by /products page=3; no browser or external service was used.
参考にした公式資料
- [1]TanStack/router README at 57e126e99dbd(2026-10-05)
- [2]Router official documentation(2026-10-05)
- [3]@tanstack/react-router 1.170.41 package source(2026-10-05)
- [4]TanStack/router LICENSE at 57e126e99dbd(2026-10-05)
- [5]TanStack/router GitHub metadata(2026-10-05)
編集部からの補足
検索条件をURLで共有し、経路変更を型で追いたいReactアプリで有力です。まず固定版のメモリー履歴で検索値の変換と次の場所の生成を確認してください。
3ステップで試す
- 1
固定版を準備する
Node.js 20.19以上とnpmが必要です。一時ディレクトリにReact用Router 1.170.41を固定して導入します。
demo=$(mktemp -d "${TMPDIR:-/tmp}/tanstack-router.XXXXXX") && cd "$demo" && npm init -y >/dev/null && npm install --save-exact @tanstack/react-router@1.170.41 react@19.2.0 react-dom@19.2.0 - 2
型付き経路と検索条件を書く
/productsのpage検索値を数値へ変換する経路ツリーを作り、メモリー履歴をpage=2で開始します。
printf '%s\n' 'import { createRootRoute, createRoute, createRouter } from '\''@tanstack/react-router'\''' 'import { createMemoryHistory } from '\''@tanstack/history'\''' 'const root=createRootRoute()' 'const products=createRoute({getParentRoute:()=>root,path:'\''/products'\'',validateSearch:s=>({page:Number(s.page??1)})})' 'const router=createRouter({routeTree:root.addChildren([products]),history:createMemoryHistory({initialEntries:['\''/products?page=2'\'']})})' 'await router.load()' 'console.log(`${router.state.location.pathname} page=${router.state.location.search.page}`)' 'const next=router.buildLocation({to:'\''/products'\'',search:{page:3}})' 'console.log(`${next.pathname} page=${next.search.page}`)' > demo.mjs - 3
現在地と次の場所を検証する
現在地のpage=2と、型付きの画面遷移用に組み立てたpage=3が順に出ることを確認します。
test "$(node demo.mjs)" = $'/products page=2\n/products page=3'
成長
成長の推移 · 直近30日
15,152 Stars
推移データを蓄積中です。
開発アクティビティ
直近90日・週次
- Commit(直近30日)
- 127
- Open PR
- 406
開発アクティビティを蓄積中です。
Built with
カテゴリとタグ
カテゴリ
GitHubデータ
GitHubのデータGitHubの詳細データを見る
GitHub Topics
- react
- router
- routing
- javascript
- searchparams
- search
- url
- route
- typesafe
- typescript
- state-management
- fullstack
- Stars
- 15,152
- Forks
- 1,881
- Watchers
- 45
- Open Issues
- 317
- Contributors
- 463
- 所有者種別
- Organization
- 主要言語
- TypeScript
- ライセンス
- MIT
- リポジトリ最終更新
- 2026/10/05
関連情報
関連記事を投稿するこのOSSの使い方や活用事例をMarkdownで投稿できます。管理者が承認した後に公開されます。
あわせて探訪
- Redux61,484 Stars
共通タグ 3件 · 同じ言語
共有状態の更新経路をStore・Action・Reducerで明示し、現代的な実装はToolkitへ寄せる
TypeScript - Zustand58,786 Stars
共通タグ 3件 · 同じ言語
Reactの状態をproviderなしのhook storeで管理し、selectorで必要な部分だけ購読する
TypeScript - Expo52,566 Stars
共通タグ 3件 · 同じ言語
React NativeアプリをAndroid・iOS・Webへ一つのprojectから展開する
TypeScript - TanStack Query50,394 Stars
共通タグ 3件 · 同じ言語
remote/server stateのfetch・cache・refetch・mutationをUI frameworkから分離して管理するasync state library
TypeScript - Virtual7,128 Stars
共通タグ 3件 · 同じ言語
長い一覧のうち画面付近の要素だけを計算し、描画量を抑えるヘッドレス仮想化ライブラリ
TypeScript - Markuplint623 Stars
共通タグ 3件 · 同じ言語
HTML標準やARIAに沿ってmarkupを検査し、React・Vue・Svelte等のtemplateにも対応する
TypeScript
情報の誤りを報告
掲載内容に誤りや古い情報があればお知らせください。