ampproject / ampproject/amp-react-prototype
Lightbox, back button, and vetoable closing
- Lingua principale
- JavaScript
- Stelle
- 36
- Fork
- 6
- Metriche di merge delle PR
- Nessuna PR unita negli ultimi 30g
Descrizione
Context: https://github.com/ampproject/amp-react-prototype/pull/8/files#diff-c554b9bd31408e663cff269f69a1c567R51
Issues:
1. Some component libraries take a stand that “back button” support has to be arranged by the caller outside the lightbox (controlled). But that causes numerous issues, including inability to make closing vetoable.
2. Back button support is HARD. Standard doesn’t exist.
Supporting back button involves the following considerations:
- Rollback of history pop for vetoable close is especially hard and requires in-depth knowledge of the stack to re-push the popped states. Some routers (e.g. ReactRouter) allow history-stack blocking for this. But it’s rare and usually buggy.
- A naive `history.pushState` can break a React router and can never be fully featured.
See also #43 on the discussion about controlled-vs-uncontrolled lightbox API.
Guida per i contributori
Apri la guida per i contributori
Direzione di ricerca
Inizia con le modifiche alla lightbox indicate in PR #8 e leggi la discussione in issue #43. Analizza in che modo la cronologia del browser, le chiusure soggette a veto e le interazioni con React Router influiscono sull’API controllata o non controllata proposta. Il lavoro è completato quando è stato definito e documentato un approccio per il comportamento del pulsante Indietro e per le chiusure soggette a veto.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Valutazione
- Stack tecnologico
- javascript, react
- Ambito
- frontend
- Tipo di issue
- Funzionalità
- Difficoltà
- 5/5
- Tempo stimato
- Più di una settimana
- Stato di attività
- Ferma
- Chiarezza
- Da chiarire
- Idoneità per principianti
- 25/100