Heim >Web-Frontend >js-Tutorial >Was ist React JSX?
react jsx ist eine JavaScript-Syntaxerweiterung, die XML sehr ähnelt, um normales JavaScript zu ersetzen. Die Vorteile von JSX sind: 1. Es ist typsicher und wird während des Kompilierungsprozesses verarbeitet . Fehler können gefunden werden. 3. Die Verwendung von JSX zum Schreiben von Vorlagen ist schneller.
Die Betriebsumgebung dieses Tutorials: Windows10-System, React16, dieser Artikel gilt für alle Computermarken.
Empfohlen: „Programmiervideo“
React JSX
React verwendet JSX, um normales JavaScript zu ersetzen.
JSX ist eine JavaScript-Syntaxerweiterung, die XML sehr ähnelt.
Wir müssen nicht unbedingt JSX verwenden, aber es hat die folgenden Vorteile:
JSX wird schneller ausgeführt, da es nach der Kompilierung in JavaScript-Code optimiert wird.
Es ist typsicher und Fehler können während des Kompilierungsprozesses gefunden werden.
Das Schreiben von Vorlagen mit JSX ist einfacher und schneller.
Schauen wir uns zuerst den folgenden Code an:
const element = <h1>Hello, world!</h1>;
Das sieht vielleicht etwas seltsam aus. Die Tag-Syntax ist weder ein String noch HTML.
Es heißt JSX, eine Syntaxerweiterung für JavaScript. Wir empfehlen die Verwendung von JSX zur Beschreibung von Benutzeroberflächen in React.
JSX ist in JavaScript implementiert.
Wir wissen, dass Elemente die kleinsten Einheiten sind, aus denen React-Anwendungen bestehen, und JSX wird verwendet, um Elemente in React zu deklarieren.
Im Gegensatz zu Browser-DOM-Elementen sind Elemente in React tatsächlich gewöhnliche Objekte. React DOM kann sicherstellen, dass der Dateninhalt des Browser-DOM mit den React-Elementen übereinstimmt.
Um React-Elemente im Root-DOM-Knoten zu rendern, rendern wir sie auf der Seite, indem wir sie beide an die ReactDOM.render()-Methode übergeben:
React-Instanz
var myDivElement = <div className="foo" />; ReactDOM.render(myDivElement, document.getElementById('example'));
Hinweis:
Da JSX JavaScript ist, sind einige Bezeichner wie class und for werden nicht als XML-Attributnamen empfohlen. Stattdessen verwendet React DOM className und htmlFor für entsprechende Attribute.
Verwenden Sie JSX
JSX sieht ähnlich aus wie HTML:
ReactDOM.render( <h1>Hello, world!</h1>, document.getElementById('example') );
Wir können im obigen Code mehrere HTML-Tags verschachteln fügt self hinzu. Definieren Sie das Attribut data-myattribute und fügen Sie benutzerdefinierte Attribute mit dem Präfix data- hinzu.
React-Instanz
ReactDOM.render( <div> <h1>PHP中文网</h1> <h2>欢迎学习 React</h2> <p data-myattribute = "somevalue">这是一个很不错的 JavaScript 库!</p> </div> , document.getElementById('example') );
Separate Datei
Ihr React JSX-Code kann in einer separaten Datei platziert werden. Beispielsweise erstellen wir eine helloworld_react.js-Datei mit dem folgenden Code:
ReactDOM.render( <h1>Hello, world!</h1>, document.getElementById('example') );
Dann fügen wir die JS-Datei in die HTML-Datei ein :
Reaktionsbeispiel
<body> <div id="example"></div> <script type="text/babel" src="helloworld_react.js"></script> </body>
JavaScript-Ausdruck
Wir können JavaScript-Ausdrücke in JSX verwenden. Ausdrücke werden in geschweifte Klammern {} geschrieben. Das Beispiel lautet wie folgt:
Reaktionsbeispiel
ReactDOM.render( <div> <h1>{1+1}</h1> </div> , document.getElementById('example') );
If else-Anweisung kann in JSX nicht verwendet werden, aber stattdessen kann ein bedingter Ausdruck (ternäre Operation) verwendet werden. Wenn im folgenden Beispiel die Variable i gleich 1 ist, gibt der Browser „true“ aus. Wenn der Wert von „i“ geändert wird, gibt er „false“ aus. Wir können die CamelCase-Syntax verwenden, um Inline-Stile festzulegen. Nach Angabe der Elementnummer fügt React automatisch Pixel hinzu. Das folgende Beispiel zeigt das Hinzufügen des myStyle-Inline-Stils zum h1-Element:
React-Instanz
ReactDOM.render( <div> <h1>{i == 1 ? 'True!' : 'False'}</h1> </div> , document.getElementById('example') );
Kommentare
Kommentare müssen in geschweiften Klammern geschrieben werden. Das Beispiel lautet wie folgt:
React-Instanz
var myStyle = { fontSize: 100, color: '#FF0000' }; ReactDOM.render( <h1 style = {myStyle}>PHP中文网</h1>, document.getElementById('example') );
Array
JSX Ermöglicht das Einfügen in ein Vorlagen-Array. Das Array erweitert automatisch alle Mitglieder:
Instanz reagieren
ReactDOM.render( <div> <h1>PHP中文网</h1> {/*注释...*/} </div>, document.getElementById('example') );
Das obige ist der detaillierte Inhalt vonWas ist React JSX?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!