Heim > Artikel > Web-Frontend > Gemeinsame Nutzung mehrerer Methoden der React-Ereignisbindung
Dieser Artikel stellt Ihnen hauptsächlich den Vergleich verschiedener Methoden der Ereignisbindung beim React-Lernen vor. Der Artikel stellt ihn ausführlich anhand von Beispielcode vor. Ich hoffe, er kann Ihnen helfen haben ein tieferes Verständnis für die React-Ereignisbindungsmethode.
Ereignisbindung reagieren
Da Klassenmethoden dies nicht standardmäßig binden, ist der Wert davon undefiniert, wenn Sie vergessen, es beim Aufruf zu binden.
Wenn es nicht direkt aufgerufen wird, sollte dies normalerweise an die Methode gebunden werden. Es gibt mehrere Bindungsmethoden:
1. Verwenden Sie bind, um dies im Konstruktor zu binden
class Button extends React.Component { constructor(props) { super(props); this.handleClick = this.handleClick.bind(this); } handleClick(){ console.log('this is:', this); } render() { return ( <button onClick={this.handleClick}> Click me </button> ); } }
2. Verwenden Sie bind, um dies zu binden
class Button extends React.Component { handleClick(){ console.log('this is:', this); } render() { return ( <button onClick={this.handleClick.bind(this)}> Click me </button> ); } }3. Verwenden Sie die Pfeilfunktion, um dies beim Aufruf zu binden
class Button extends React.Component { handleClick(){ console.log('this is:', this); } render() { return ( <button onClick={()=>this.handleClick()}> Click me </button> ); } }4. Verwenden Sie die Eigenschaftsinitialisierer-Syntax, um dies zu binden (experimentell)
class Button extends React.Component { handleClick=()=>{ console.log('this is:', this); } render() { return ( <button onClick={this.handleClick}> Click me </button> ); } }Vergleich
Grundlegende Erklärung der jQuery-Ereignisbindungsfunktion
Detaillierte Erklärung, wie jQuery die grundlegende Ereignisbindungsfunktion implementiert
Detaillierte Erläuterung der Funktionsbindungs- und Klassenereignisbindungsfunktionen von JavaScript in ES6
Das obige ist der detaillierte Inhalt vonGemeinsame Nutzung mehrerer Methoden der React-Ereignisbindung. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!