Svelte form - `state_proxy_equality_mismatch` warnings when calling `field.handleChange()`

Offen
#2,256 1 Kommentar 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Maintainer antworten meist innerhalb von 1 Tag

Dieses Issue hat noch niemand übernommen.

Bewertung

Schwierigkeit
3/5
Geschätzter Aufwand
1-2 Tage
Anfängerfreundlichkeit
52/100
Issue-Typ
Bug
Klarheit
Größtenteils klar
Aktivitätsstatus
Ruhig
Tech-Stack
typescript
Bereich
frontend

Rechercherichtung

Beginne mit dem einfachen Svelte-Beispiel unter examples/svelte/simple/src/App.svelte und reproduziere das Problem in der verlinkten CodeSandbox, indem du in das Vornamensfeld eingibst und dabei die Konsole beobachtest. Vergleiche das Verhalten zwischen den Versionen 1.32.1 und 1.33.0; fertig ist die Aufgabe, wenn wiederholte Aufrufe von field.handleChange() keine state_proxy_equality_mismatch-Warnungen mehr erzeugen.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Beschreibung

v1 v2: needs investigation
Describe the bug

Each call to field.handleChange() generates multiple state_proxy_equality_mismatch svelte warning in console.

Your minimal, reproducible example

https://codesandbox.io/p/devbox/github/tanstack/form/tree/main/examples/svelte/simple?embed=1&theme=dark&file=src/App.svelte

Steps to reproduce
  1. Open the simple example for svelte form - https://codesandbox.io/p/devbox/github/tanstack/form/tree/main/examples/svelte/simple?embed=1&theme=dark&file=src/App.svelte
  2. Open devtools console
  3. Type anything into first name
  4. Each keystroke generates 7 state_proxy_equality_mismatch warnings in console.
Reactive `$state(...)` proxies and the values they proxy have different identities. Because of this, comparisons with `===` will produce unexpected results
Expected behavior

I expect no warning to be in console.

How often does this bug happen?

Every time

Screenshots or Videos
Image
Platform
  • Chrome 150
  • Rocky Linux
TanStack Form adapter

svelte-form

TanStack Form version

1.33.2

TypeScript version

No response

Additional context

The warning appears in version 1.33.0 and up. They do not appear in version 1.32.1 and lower.

Vorherrschende Sprache
TypeScript
Sterne
6.8k
Forks
705
Ø Merge
1 T. 12 Std.
Gemergte PRs (30 T.)
14

Entwicklungsumgebung

Erste Schritte

  1. Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
  3. Forken Sie das Repository und arbeiten Sie in einem Branch.
  4. Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.

Mehr aus TanStack/form

Alle Issues in TanStack/form

Ähnliche Issues

Weitere Issues zu TypeScript

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.