Ereignisse reagieren


Genau wie HTML-DOM-Ereignisse kann React Aktionen basierend auf Benutzerereignissen ausführen.

React hat die gleichen Events wie HTML: click, change, mouseover etc.


Ereignisse hinzufügen

Reaktionsereignisse werden in camelCase-Syntax geschrieben:

onClick statt onclick.

React Event Handler werden in geschweiften Klammern geschrieben:

onClick={shoot}  statt onClick="shoot()".

Reagieren:

<button onClick={shoot}>Take the Shot!</button>

HTML:

<button onclick="shoot()">Take the Shot!</button>

Beispiel:

Fügen Sie die shootFunktion in die FootballKomponente ein:

function Football() {
  const shoot = () => {
    alert("Great Shot!");
  }

  return (
    <button onClick={shoot}>Take the shot!</button>
  );
}

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


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

Argumente übergeben

Verwenden Sie eine Pfeilfunktion, um ein Argument an einen Ereignishandler zu übergeben.

Beispiel:

Senden Sie "Tor!" als Parameter für die shoot Funktion mit der Pfeilfunktion:

function Football() {
  const shoot = (a) => {
    alert(a);
  }

  return (
    <button onClick={() => shoot("Goal!")}>Take the shot!</button>
  );
}

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


Reaktionsereignisobjekt

Ereignishandler haben Zugriff auf das React-Ereignis, das die Funktion ausgelöst hat.

In unserem Beispiel ist das Ereignis das „Klick“-Ereignis.

Beispiel:

Pfeilfunktion: Ereignisobjekt manuell senden:

function Football() {
  const shoot = (a, b) => {
    alert(b.type);
    /*
    'b' represents the React event that triggered the function,
    in this case the 'click' event
    */
  }

  return (
    <button onClick={(event) => shoot("Goal!", event)}>Take the shot!</button>
  );
}

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

Dies wird sich als nützlich erweisen, wenn wir uns in einem späteren Kapitel mit Form befassen.


Testen Sie sich mit Übungen

Übung:

Vervollständigen Sie diese Anweisung, um einen Click-Event-Handler einzuschließen.

<button ={clicked()}>Click Me!</button>