React 16.6 wurde veröffentlicht und bringt wieder einige Features mit. Die neue Version baut erneut auf den Änderungen der vorherigen Releases auf und geht auf das Feedback der Community ein. Das sei der Grund, so erklärt Sebastian Markbåge im Blogpost zum Release der neuen Version, aus dem man erneut am neuen offiziellen Context API gearbeitet habe, das zu React 16.3 die Legacy-Version ersetzt hatte. Als Reaktion auf Probleme, die bei der Anwendung des dazugehörigen neuen render prop APIs mit Class Components auftraten, wurde nun ein neues API hinzugefügt, das diesen Schritt erleichtern soll. Damit ist nun ein statisches Class Field zur Initialisierung von contextType
verfügbar.
Neu in React 16.6: React.lazy
Zu den neuen Features von React 16.6 gehört außerdem, dass Suspense-Komponenten nun Code-Splitting erlauben. Dazu wird ein dynamischer Import in einen Aufruf von React.lazy()
verpackt. Neu ist auch eine Error-Methode, mit der das Fallback-UI gerendert werden kann, bevor das initiale Rendering abgeschlossen ist. Damit soll ein Problem mit den Error Boundaries gelöst werden, die in React 16 eingeführt wurden. Es war zwar auch zuvor schon möglich, alternative UIs rendern zu lassen. Im Fall eines Fehlers wurde jedoch null
weitergegeben, statt den auslösenden Teil der Anwendung auszuführen. Das konnte jedoch Probleme mit Eltern-Komponenten verursachen, die dieses Verhalten nicht erwartet haben. Darum kann das Rendering der Fallback-Lösung nun vorgezogen werden.
Mehr Informationen zu diesen und weiteren neuen Features in React 16.6 können dem Blogpost zum Release von Sebastian Markbåge entnommen werden.