Form-level validation with onChange and arrays throws an undefined errorMap
メンテナーはふだん 1 日以内に返信
まだ誰も着手していません。
評価
- 難易度
- 3/5
- 見積もり時間
- 1〜2日
- 初心者へのやさしさ
- 45/100
- issue の種類
- バグ
- 明瞭さ
- おおむね明確
- 活発さ
- 停滞
- 技術スタック
- react, typescript
- 領域
- frontend
調査の方向性
リンクされている StackBlitz の再現環境を TanStack Form 1.19.2 で開始し、FormApi.validateField、validateSync、setFieldMeta を通ってスタックトレースを追跡します。すべてのフィールドをクリアする場合と配列の 1 つの要素を削除する場合で、フォームレベルの onChange バリデーションを比較します。完了条件は、削除時に undefined errorMap によるエラーが発生しなくなることです。
索引モデルが issue の本文から書いたものです。
説明
Describe the bug
Form-level validation with onChange and arrays throws an undefined errorMap when all fields are deleted or when a single field is removed. This issue only occurs with form-level validation using the onChange validator.
Uncaught TypeError: Cannot read properties of undefined (reading 'errorMap')
at @tanstack_react-form.js?v=473e5c45:1136:27
at functionalUpdate (@tanstack_react-form.js?v=473e5c45:423:42)
at @tanstack_react-form.js?v=473e5c45:1349:22
at Store.setState (@tanstack_react-form.js?v=473e5c45:296:22)
at FormApi.setFieldMeta (@tanstack_react-form.js?v=473e5c45:1344:22)
at @tanstack_react-form.js?v=473e5c45:1133:20
at batch (@tanstack_react-form.js?v=473e5c45:255:5)
at FormApi.validateSync (@tanstack_react-form.js?v=473e5c45:1090:7)
at FieldApi.validate (@tanstack_react-form.js?v=473e5c45:2205:97)
at FormApi.validateField (@tanstack_react-form.js?v=473e5c45:1080:28)
Your minimal, reproducible example
https://stackblitz.com/edit/vitejs-vite-egzzxehs?file=src%2FApp.tsx
Steps to reproduce
- Make a change in the form to trigger onChange event (you must see validation error for both fields)
- Click on
clear allorclean one - See console logs
TanStack Form version
1.19.2
TypeScript version
5.8.3
- 主要言語
- TypeScript
- スター
- 6.8k
- フォーク
- 705
- 平均マージ
- 1日 12時間
- マージ済み PR(30日)
- 14
環境構築
- Dockerfile・Docker Compose ファイルなし
- プルリクエストのテンプレートあり
- コントリビューションガイドを読む
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
TanStack/form のほかの issue
-
`isDefaultValue` is wrong when a field-level `defaultValue` is `null`対応中かも @fenet-as が 21 日前に担当しました。 オープン
難易度 2/5 1〜3時間 初心者へのやさしさ 76/100
TanStack/form#2427 · コメント 1 件 ·
メンテナーはふだん 1 日以内に返信
-
Async validator doesn't re-trigger `isValidating` after first failed validation対応中かも @drewsephski が 25 日前に担当しました。 オープン
難易度 2/5 1〜2日 初心者へのやさしさ 72/100
メンテナーはふだん 1 日以内に返信
-
[v2 alpha] devtools are always light mode対応中かも @dikshit-n が 60 日前に担当しました。 オープンarea: runtime scope: devtools type: bug v2
難易度 2/5 1〜3時間 初心者へのやさしさ 65/100
メンテナーはふだん 1 日以内に返信
-
FormGroupApi.getRelatedFields and FieldApi.validate() use unguarded startsWith for group membership, matching unrelated fields with a shared name prefix対応中かも @HDPark95 が 78 日前に担当しました。 オープンarea: runtime scope: core type: bug v1
難易度 2/5 1〜3時間 初心者へのやさしさ 82/100
TanStack/form#2337 · コメント 1 件 ·
メンテナーはふだん 1 日以内に返信
-
FormApi: onSubmit/onServer error cleared on any non-matching validation cause, not just 'change'再び着手できるかも このイシューのプルリクエストはマージされずにクローズされました。 オープンv1 v2: needs investigation
難易度 2/5 1〜3時間 初心者へのやさしさ 76/100
メンテナーはふだん 1 日以内に返信
似ている issue
-
area: cli bug flake ready-for-agent
難易度 2/5 1〜3時間 初心者へのやさしさ 62/100
gazetta-studio/gazetta-studio#1772 ·
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 82/100
-
needs-triage
難易度 2/5 1〜3時間 初心者へのやさしさ 66/100
microsoft/playwright#43875 · コメント 1 件 ·
メンテナーはふだん 1 日以内に返信
-
documentation good first issue
難易度 2/5 1〜3時間 初心者へのやさしさ 68/100
メンテナーはふだん 1 日以内に返信
-
feature
難易度 2/5 1〜3時間 初心者へのやさしさ 78/100
calagopus/panel#285 · コメント 1 件 ·
メンテナーはふだん 1 日以内に返信