Apollo GraphQL ohne JavaScript

Avatar of Chris Coyier
Chris Coyier am

DigitalOcean bietet Cloud-Produkte für jede Phase Ihrer Reise. Starten Sie mit 200 $ kostenlosem Guthaben!

Es ist cool zu sehen, dass Progressive Enhancement selbst bei der Verwendung der schicksten Frontend-Technologien umgesetzt wird.

Dies ist ein Button in einer JSX-React-Komponente mit einem direkt angewendeten Click-Handler, der eine Datenmutations-Ajax-Anfrage über Apollo GraphQL auslöst. Das ist wohl die unfreundlichste Umgebung für progressive Verbesserung, die ich mir vorstellen kann.

Kitty Giraudel schreibt, dass sie bereits Server-Side-Rendering betreiben, daher ist der nächste knifflige Teil der Click-Handler. Ohne JavaScript ist der einzige Mechanismus, den wir zum Posten von Daten haben, ein <form>, also tun sie das. Es sendet an den /graphql-Endpunkt mit den Daten, die zum Ausführen der Mutation über versteckte Eingaben benötigt werden, sowie zusätzliche Daten darüber, wohin nach Erfolg oder Misserfolg umgeleitet werden soll.

Ziemlich raffiniert.

Direkter Link →