Form-level validation with onChange and arrays throws an undefined errorMap

Ouverte
#1,709 2 commentaires 0 réactions 0 personnes assignées Voir sur GitHub

Les mainteneurs répondent en général sous 1 jour

Personne n'a encore pris cette issue.

Évaluation

Difficulté
3/5
Temps estimé
1-2 jours
Accessibilité débutants
45/100
Type d'issue
Bug
Clarté
Plutôt claire
Activité
À l'abandon
Stack technique
react, typescript
Domaine
frontend

Piste de recherche

Commencez par la reproduction StackBlitz liée utilisant TanStack Form 1.19.2 et suivez la trace de la pile à travers FormApi.validateField, validateSync et setFieldMeta. Comparez la validation onChange au niveau du formulaire lors de l’effacement de tous les champs avec celle effectuée lors de la suppression d’un élément du tableau ; le travail est terminé lorsque la suppression ne provoque plus d’erreur liée à une undefined errorMap.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Description

v1 v2: needs investigation
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
  1. Make a change in the form to trigger onChange event (you must see validation error for both fields)
Image
  1. Click on clear all or clean one
  2. See console logs
TanStack Form version

1.19.2

TypeScript version

5.8.3

Langage dominant
TypeScript
Étoiles
6.8k
Forks
705
Merge moyen
1 j 7 h
PR mergées (30 j)
13

Préparer son environnement

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Autres issues de TanStack/form

Toutes les issues de TanStack/form

Issues similaires

Plus d'issues TypeScript

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.