JavaScript-Library React 0.14 erschienen

(c) React
Rund einen Monat nach dem Release der React Developer Tools in Version 0.14 wurde nun auch React selbst in v0.14 veröffentlicht. An React 0.14 wurden einige größere Änderungen durchgeführt, die der Vereinfachung des Codes und der besseren Unterstützung von Entwicklungsumgebungen wie React Native dienen sollen.
Nachdem bereits Anfang September der Release Candidate von React 0.14 erschienen ist, hat sich das Entwickler-Team mächtig ins Zeug gelegt und präsentiert nun die stabile Version 0.14. Ben Alpert, Entwickler bei Facebook, stellt in einem Blogpost die Änderungen vor.
Änderungen und Neuerungen in React 0.14
Beim Upgrade auf die neue Version sollten für User von React 0.13 keine Probleme entstehen, solange ihr Code fehlerfrei läuft. Jede Änderung in Version 0.14 ist mit einer Runtime-Warnmeldung versehen und soll bis Version 0.15 laufen, ohne dass Kompatibilitätsprobleme entstehen. Um den Übergang zu erleichtern, hat das Team allerdings mit react-codemodein Skript zur Verfügung gestellt, dasbei der Umstellung behilflich sein soll.
Zu den wichtigsten Änderungen gehört die Aufspaltung des “react”-Packages in “react” und “react-dom”. Die Trennung soll den Weg zum Schreiben von Komponenten ebnen, die innerhalb der Webversionen von React und React Native geteilt werden können. Zum neuen react-Package gehören nun React.createElement
, .createClass
, .Component
, .PropTypes
und .Children
sowie weitere Element- oder Komponenten-bezogene Helper. Zu react-dom zählen nun alle DOM-bezogenen Funktionalitäten wie ReactDOM.render
, .unmountComponentAtNode
und.findDOMNode
. Außerdem wurden die Referenzen auf dem DOM-Node vereinfacht, sodass anstatt des Aufrufs this.refs.giraffe.getDOMNode()
nur noch this.refs.giraffe
nötig ist, um direkten Zugriff auf den DOM-Node zu erhalten.
Auch die Syntax für zustandslose funktionale Komponenten wurde vereinfacht: Jetzt kann props
als Argument genutzt und das zu rendernde Element zurückgegeben werden. Das “react-tools”-Package und der JSXTransformer.js-Browser wurden als deprecated markiert. Außerdem unterstützt React nun zwei Compiler-Optimierungen, die ab Babel 5.8.23 eingesetzt werden können: Das Inlining sowie das konstante Hoisting von React-Elementen sollten aber jeweils nur in der Production-Phase eingesetzt werden.
Breaking Changes und Verbesserungen
Zwei wichtige Änderungen wurden in Version 0.13 nicht bekanntgegeben, sollten aber leicht zu finden und zu beheben sein: React.initializeTouchEvents
ist nicht länger notwendig und wurde komplett entfernt. Touch Events sollen nun automatisch funktionieren. Zudem sind aufgrund der Referenzänderungen auf dem DOM-Node TestUtils.findAllInRenderedTree
und andere Helper nicht länger in der Lage, eine DOM-Komponente aufzunehmen.
React nutzt des Weiteren nun console.error
anstatt console.warn
für Warnungen – so kann der Browser eine vollständige Fehlerprotokollierung in der Konsole anzeigen. React DOM generiert nach Möglichkeit ein XHTML-kompatibles Markup und unterstützt Standard-HTML-Attribute. Außerdem unterstützt React DOM neue SVG-Attribute und den image
-SVG-Tag. In Version 0.14 warnt React DOM zudem vor ungültigem HTML-Nesting.
Auch Deprecations wurden vorgenommen, allerdings sollten alle Features trotz Änderungen noch bis Version 0.15 normal weiterlaufen. Zusätzlich wurden einige Bug Fixes durchgeführt, die der Bedienbarkeit des Frameworks zuträglich sind.
Einen Überblick sowie ausführliche Informationen zum Release der neuen React-Version 0.14 gibt es im React-Blog. Die verschiedenen Versionen von React 0.14 – React, React mit Add-Ons und React DOM – stehen auf der Downloadseite zur Verfügung.
Hinterlasse einen Kommentar