Reaktionskomponenten


Komponenten sind wie Funktionen, die HTML-Elemente zurückgeben.


Reaktionskomponenten

Komponenten sind unabhängige und wiederverwendbare Codebits. Sie dienen demselben Zweck wie JavaScript-Funktionen, arbeiten jedoch isoliert und geben HTML zurück.

Es gibt zwei Arten von Komponenten, Klassenkomponenten und Funktionskomponenten. In diesem Tutorial konzentrieren wir uns auf Funktionskomponenten.

In älteren React-Codebasen werden möglicherweise hauptsächlich Klassenkomponenten verwendet. Es wird jetzt vorgeschlagen, Funktionskomponenten zusammen mit Hooks zu verwenden, die in React 16.8 hinzugefügt wurden. Es gibt einen optionalen Abschnitt über Klassenkomponenten als Referenz.


Erstellen Sie Ihre erste Komponente

Beim Erstellen einer React-Komponente MUSS der Name der Komponente mit einem Großbuchstaben beginnen.

Klasse Komponente

Eine Klassenkomponente muss die extends React.ComponentAnweisung enthalten. Diese Anweisung erstellt eine Vererbung an React.Component und gibt Ihrer Komponente Zugriff auf die Funktionen von React.Component.

Die Komponente benötigt auch eine render()Methode, diese Methode gibt HTML zurück.

Beispiel

Erstellen Sie eine Klassenkomponente namens Car

class Car extends React.Component {
  render() {
    return <h2>Hi, I am a Car!</h2>;
  }
}

Funktionskomponente

Hier ist das gleiche Beispiel wie oben, aber stattdessen mit einer Funktionskomponente erstellt.

Eine Funktionskomponente gibt auch HTML zurück und verhält sich ähnlich wie eine Klassenkomponente, aber Funktionskomponenten können mit viel weniger Code geschrieben werden, sind einfacher zu verstehen und werden in diesem Lernprogramm bevorzugt.

Beispiel

Erstellen Sie eine Function-Komponente namens Car

function Car() {
  return <h2>Hi, I am a Car!</h2>;
}


w3schools CERTIFIED . 2022

Zertifiziert werden!

Absolvieren Sie die React-Module, machen Sie die Übungen, machen Sie die Prüfung und werden Sie w3schools-zertifiziert!!

$ 95 REGISTRIEREN

Rendern einer Komponente

Jetzt hat Ihre React-Anwendung eine Komponente namens Car, die ein <h2>Element zurückgibt.

Um diese Komponente in Ihrer Anwendung zu verwenden, verwenden Sie eine ähnliche Syntax wie normales HTML: <Car />

Beispiel

Zeigen Sie die CarKomponente im "root"-Element an:

ReactDOM.render(<Car />, document.getElementById('root'));


Requisiten

Komponenten können als übergeben werden props, was für Eigenschaften steht.

Props sind wie Funktionsargumente, und Sie senden sie als Attribute an die Komponente.

propsIm nächsten Kapitel erfahren Sie mehr darüber .

Beispiel

Verwenden Sie ein Attribut, um eine Farbe an die Car-Komponente zu übergeben, und verwenden Sie sie in der Funktion render():

function Car(props) {
  return <h2>I am a {props.color} Car!</h2>;
}

ReactDOM.render(<Car color="red"/>, document.getElementById('root'));


Komponenten in Komponenten

Wir können auf Komponenten innerhalb anderer Komponenten verweisen:

Beispiel

Verwenden Sie die Car-Komponente innerhalb der Garage-Komponente:

function Car() {
  return <h2>I am a Car!</h2>;
}

function Garage() {
  return (
    <>
      <h1>Who lives in my Garage?</h1>
      <Car />
    </>
  );
}

ReactDOM.render(<Garage />, document.getElementById('root'));


Komponenten in Dateien

Bei React dreht sich alles um die Wiederverwendung von Code, und es wird empfohlen, Ihre Komponenten in separate Dateien aufzuteilen.

Erstellen Sie dazu eine neue Datei mit einer .js Dateierweiterung und fügen Sie den Code darin ein:

Beachten Sie, dass der Dateiname mit einem Großbuchstaben beginnen muss.

Beispiel

Dies ist die neue Datei, wir haben sie "Car.js" genannt:

function Car() {
  return <h2>Hi, I am a Car!</h2>;
}

export default Car;

Um die Car-Komponente nutzen zu können, müssen Sie die Datei in Ihre Anwendung importieren.

Beispiel

Jetzt importieren wir die Datei „Car.js“ in die Anwendung und können die Car Komponente so verwenden, als wäre sie hier erstellt worden.

import React from 'react';
import ReactDOM from 'react-dom';
import Car from './Car.js';

ReactDOM.render(<Car />, document.getElementById('root'));


Testen Sie sich mit Übungen

Übung:

Benennen Sie die folgende React-Komponente „Person“.

function (props) {
  return <h2>Hi, I'm {props.name}</h2>;
}