react / react/react-native

Stale IntersectionObserver entries abort callbacks for active observers

Offen
#58,234 1 Kommentar 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

Needs: Author Feedback Needs: Repro
Vorherrschende Sprache
C++
Sterne
127k
Forks
25.3k
Ø Merge
1 T. 23 Std.
Gemergte PRs (30 T.)
4

Beschreibung

Description

The IntersectionObserver manager explicitly tolerates stale native entries when an observer is disconnected between commit and mount. However, encountering one missing registration returns from the entire notification pass, dropping every later entry and callback in the same native batch, including entries for still-active observers.

Expected behavior

A stale entry for a disconnected observer should be ignored while notification continues for all active observers in the batch, matching the equivalent ResizeObserver handling.

React Native Version

0.87.1 and current main

Affected Platforms

New Architecture - All

Beitragsleitfaden

Beitragsleitfaden öffnen

Erste Schritte

  1. Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
  3. Forke das Repository und arbeite in einem Branch.
  4. Öffne einen Pull Request, der die Issue-Nummer nennt.

Rechercherichtung

Beginne beim Benachrichtigungsdurchlauf des IntersectionObserver-Managers und vergleiche dessen Umgang mit veralteten Einträgen mit dem im Issue erwähnten entsprechenden Umgang von ResizeObserver. Reproduziere einen Batch mit einem getrennten Observer, auf den aktive Observer folgen, oder untersuche einen solchen, und überprüfe anschließend, dass veraltete Einträge ignoriert werden und nachfolgende aktive Callbacks weiterhin ausgeführt werden.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
cpp, react-native
Bereich
mobile-dev
Issue-Typ
Bug
Schwierigkeit
3/5
Geschätzter Aufwand
1-2 Tage
Aktivitätsstatus
Aktiv
Klarheit
Klar beschrieben
Anfängerfreundlichkeit
68/100

Neue Issues direkt in Ihr Postfach

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