Heim > Web-Frontend > js-Tutorial > Wie übergebe ich Werte an onClick-Ereignisse in React?

Wie übergebe ich Werte an onClick-Ereignisse in React?

Mary-Kate Olsen
Freigeben: 2024-11-29 00:48:10
Original
520 Leute haben es durchsucht

How to Pass Values to onClick Events in React?

Werte an onClick-Ereignisse in React übergeben

Der onClick-Ereignishandler von React akzeptiert nativ keine Parameter. Wenn onClick ausgelöst wird, werden synthetische Ereigniseigenschaften ohne explizite Wertübertragung angezeigt. Um dies zu überwinden, können mehrere Ansätze verwendet werden:

Pfeilfunktion (einfache Möglichkeit)

Eine Pfeilfunktion kann verwendet werden, um Werte manuell an den onClick-Handler zu übergeben:

return (
  <th value={column} onClick={() => this.handleSort(column)}>{column}</th>
);
Nach dem Login kopieren

Dadurch wird eine neue Funktion erstellt, die handleSort mit den gewünschten Parametern aufruft. Eine übermäßige Funktionserstellung kann jedoch zu unnötigen erneuten Renderings führen.

Unterkomponente (optimale Methode)

Das Extrahieren des Handlers in eine Unterkomponente verbessert die Leistung, indem es verhindert übertrieben Neu-Rendering:

Unterkomponente

class TableHeader extends Component {
  handleClick = () => {
    this.props.onHeaderClick(this.props.value);
  }

  render() {
    return (
      <th onClick={this.handleClick}>
        {this.props.column}
      </th>
    );
  }
}
Nach dem Login kopieren

Hauptkomponente

{this.props.defaultColumns.map((column) => (
  <TableHeader
    value={column}
    onHeaderClick={this.handleSort}
  />
))}
Nach dem Login kopieren

ES5 Legacy Ansatz (einfache Möglichkeit)

Aus Gründen der ES5-Kompatibilität kann der folgende Ansatz Werte mit übergeben .bind:

return (
  <th value={column} onClick={this.handleSort.bind(this, column)}>{column}</th>
);
Nach dem Login kopieren

Durch Auswahl der am besten geeigneten Technik können Sie Werte effektiv an onClick-Ereignisse in React übergeben und das in der Frage beschriebene Problem vermeiden.

Das obige ist der detaillierte Inhalt vonWie übergebe ich Werte an onClick-Ereignisse in React?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

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
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage