Mobile only: Button is not pressable if I change color from `undefined` to value and back at `onPointerUp` event
Dieses Issue hat noch niemand übernommen.
Bewertung
- Schwierigkeit
- 4/5
- Geschätzter Aufwand
- 3-5 Tage
- Anfängerfreundlichkeit
- 35/100
- Issue-Typ
- Bug
- Klarheit
- Größtenteils klar
- Aktivitätsstatus
- Veraltet
- Tech-Stack
- javascript, react
- Bereich
- frontend, mobile-dev
Rechercherichtung
Beginne damit, das bereitgestellte UnstyledButton-Beispiel auf Mobilgeräten mit RSD 0.0.47 zu reproduzieren, wobei du dich auf den Übergang vom aktiven Farbwert zurück zu undefined während onPointerUp konzentrierst. Verfolge den Pfad von Pointer-Event und Style-Update; abgeschlossen ist es, wenn onClick zuverlässig ausgelöst wird, nachdem der aktive Style entfernt wurde.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Beschreibung
Describe the issue
Our component manages button active style internally like on example below.
When onPointerUp callback is fired the style with the color property is removed from button element.
It somehow result in onClick callback not working.
https://github.com/user-attachments/assets/17810d7c-68ed-4d41-b16b-d3c739065c46
Expected behavior
onClick works as expected despite the change of styles
Steps to reproduce
RSD 0.0.47, the issue reproduces only on mobile.
const UnstyledButton = () => {
const [isActive, setActive] = React.useState(false);
return (
<h.button
style={isActive && styles.active}
type="button"
role="button"
onClick={() => alert('!')}
onPointerDown={() => setActive(true)}
onPointerUp={() => setActive(false)}
onPointerOut={() => setActive(false)}
onPointerCancel={() => setActive(false)}
onKeyDown={({ key }) => {
if (key === "Enter" || key === " " || key === "Space") {
setActive(true);
}
}}
onKeyUp={() => setActive(false)}
{...props}
>
Test Button
</h.button>
);
};
UnstyledButton.displayName = "UnstyledButton";
const styles = css.create({
active: {
color: '#0f0',
},
});
- Vorherrschende Sprache
- JavaScript
- Sterne
- 3.6k
- Forks
- 206
- PR-Merge-Kennzahlen
- Keine gemergten PRs in 30 T.
Entwicklungsumgebung
Erste Schritte
- Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
- Forken Sie das Repository und arbeiten Sie in einem Branch.
- Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.
Mehr aus react/react-strict-dom
-
bug
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 65/100
react/react-strict-dom#467 · 1 Kommentar ·
-
Missing disabled propOffen
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 68/100
react/react-strict-dom#465 · 2 Kommentare ·
-
Schwierigkeit 5/5 Über eine Woche Anfängerfreundlichkeit 35/100
react/react-strict-dom#520 ·
-
bug
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 35/100
react/react-strict-dom#505 · 2 Reaktionen ·
-
bug
Schwierigkeit 3/5 1-2 Tage Anfängerfreundlichkeit 62/100
react/react-strict-dom#491 · 4 Kommentare ·
Alle Issues in react/react-strict-dom
Ähnliche Issues
-
Add: Digi 4K LogoOffencheck:passed logos:add
Schwierigkeit 1/5 Unter einer Stunde Anfängerfreundlichkeit 82/100
Maintainer antworten meist innerhalb von 1 Tag
-
component/administration domain/framework needs-triage Platform(Default) priority/low
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 88/100
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 1/5 Unter einer Stunde Anfängerfreundlichkeit 90/100
semantic-release/gitlab#1032 ·
-
agent/guide documentation hive/hosted-available-lke648397-260827-5n31
Schwierigkeit 1/5 Unter einer Stunde Anfängerfreundlichkeit 92/100
Maintainer antworten meist innerhalb von 1 Tag
-
[aw] Upgrade availableOffenagentic-workflows
Schwierigkeit 1/5 Unter einer Stunde Anfängerfreundlichkeit 85/100
githubnext/gh-aw-workshop#3933 ·
Maintainer antworten meist innerhalb von 2 Tagen