ampproject / ampproject/amp-react-prototype
Playability: imperative vs declarative control
- Vorherrschende Sprache
- JavaScript
- Sterne
- 36
- Forks
- 6
- PR-Merge-Kennzahlen
- Keine gemergten PRs in 30 T.
Beschreibung
When an area of DOM (or component subtree) becomes unrendered or uninteractive, we need to pause relevant components. Otherwise the playback will continue and use will have no way of finding where it’s coming from and how to stop it.
For playability we can use `AmpContext` context properties.
For imperative/declarative control, playback is very difficult to support declaratively. This we can use `useImperativeHandle` and export playback API including `playState`, `play`, `pause`, and other similar methods.
Beitragsleitfaden
Rechercherichtung
Es werden keine Dateien oder Tests genannt. Beginne damit, den bestehenden AmpContext und die Einstiegspunkte für die Komponentenwiedergabe zu lesen, und vergleiche anschließend, wie nicht gerenderte oder nicht interaktive Teilbäume erkannt werden, mit den Anforderungen an imperative und deklarative Steuerung. Die Aufgabe ist abgeschlossen, wenn die relevante Wiedergabe pausiert wird, sobald ein Teilbaum nicht verfügbar ist, und die Playback-API den angeforderten Zustand und die angeforderten Steuerelemente bereitstellt.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- javascript, react
- Bereich
- frontend
- Issue-Typ
- Feature
- Schwierigkeit
- 5/5
- Geschätzter Aufwand
- Über eine Woche
- Aktivitätsstatus
- Veraltet
- Klarheit
- Muss geklärt werden
- Anfängerfreundlichkeit
- 25/100