Heim > Web-Frontend > js-Tutorial > Hauptteil

Was ist React JSX?

藏色散人
Freigeben: 2020-11-30 15:54:35
Original
2156 Leute haben es durchsucht

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.

Was ist React JSX?

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>;
Nach dem Login kopieren

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(&#39;example&#39;));
Nach dem Login kopieren

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(&#39;example&#39;)
);
Nach dem Login kopieren

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(&#39;example&#39;)
);
Nach dem Login kopieren

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(&#39;example&#39;)
);
Nach dem Login kopieren

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>
Nach dem Login kopieren

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(&#39;example&#39;)
);
Nach dem Login kopieren

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 ? &#39;True!&#39; : &#39;False&#39;}</h1>
    </div>
    ,
    document.getElementById(&#39;example&#39;)
);
Nach dem Login kopieren

Kommentare

Kommentare müssen in geschweiften Klammern geschrieben werden. Das Beispiel lautet wie folgt:

React-Instanz

var myStyle = {
    fontSize: 100,
    color: &#39;#FF0000&#39;
};
ReactDOM.render(
    <h1 style = {myStyle}>PHP中文网</h1>,
    document.getElementById(&#39;example&#39;)
);
Nach dem Login kopieren

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(&#39;example&#39;)
);
Nach dem Login kopieren

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!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!