はじめに こんにちは! 開発 2 部の小林です。 弊社の各プロジェクトでは、React Hook Form (以後 RHF とする) と Zod を用いて、様々な要件のフォームの実装をしています。 今回は、API 側から取得した値に基づいて、text, number, checkbox のように、入力項目を出し分けられる型が動的なフォーム(以後 動的フォーム とする)を作成しました。 この記事では、実装した動的フォームのコード例と、実装の過程で直面した課題+その解決策について紹介します。 はじめに 対象読者 Zod の schema で動的なフォームを表す方法 動的フォームに通常の Zod schema を使用できない理由 動的に schema を設定できる descriminated union 作成した動的フォームの説明 要件 設計 具体的なコード例 Schema Form Field
![react-hook-formとZodで作る型が動的なフォーム - バイセル Tech Blog](https://cdn-ak-scissors.b.st-hatena.com/image/square/b33797918003525b005036fb954eb629e0504f73/height=288;version=1;width=512/https%3A%2F%2Fcdn-ak.f.st-hatena.com%2Fimages%2Ffotolife%2Fb%2Fbst-tech%2F20230317%2F20230317152554.png)