概要
shadcn/ui の Table コンポーネントにフィルタ機能を実装する方法を解説します。
前提
以下のコードは React – shadcn/ui の Table コンポーネントについて解説 | pystyle で作成した動的なテーブルの実装の機能追加になります。 まず、上記のページでテーブルを実装し、そのコードに以下のコードを追加してください。
フィルタ機能を実装する

1. Input コンポーネントを追加
ページ遷移ボタンの実装には、Input コンポーネントを使用するため、インストールします。
2. フィルタ機能の追加
テーブルを実装した src/payment/payment-table.tsx
を以下のように変更します。
src/payment/payment-table.tsx
解説
詳しくは Column Filtering Guide | TanStack Table Docs を参照してください。
フィルタ状態を管理するための state を作成し、table のフィルタ状態と連携します。
- onColumnFiltersChange: テーブルのフィルタ状態が変更された場合に呼ばれるコールバック関数を設定します。
- state.columnFilters: フィルタ状態を管理する state を設定します。
- getFilteredRowModel: フィルタ状態に応じた行モデルを取得する関数を設定します。
ユーザーがフィルタを入力するための入力欄を追加します。
コメント