TL;DR

Web アプリケーションのフォームを扱うためのライブラリ。TypeScript の型サポートが強く、UI を持たない(ヘッドレスな)作りで、特定のフレームワークに依存しない。

なぜ必要か

公式ドキュメントによると、多くの Web フレームワークにはフォームを扱うための完全な仕組みがない。そのため独自のコードや機能の限られたライブラリに頼ることになり、一貫性がなくなる、性能が落ちる、開発に時間がかかる、といった問題が起きる。TanStack Form はこれを 1 つのパッケージで解決することを目指している。

仕組み

フレームワークごとのアダプタがあり、React、Vue、Angular、Solid、Svelte、Lit で使える。

例

公式ドキュメントの例では、フィールドごとに、同期のバリデータを onChange に、非同期のバリデータを onChangeAsync に指定している。複雑なバリデーションとエラー処理を扱うことも、ライブラリの目的に挙げられている。

関連

出典