2017-07-17 15 views
0

Ich will das in ein OnChange, dieses Ereignis ruft 2 verschiedene Funktionen mit ReactJS auf. Ich habe verschiedene Formen ausprobiert, aber ich habe keinen Erfolg. Ich habe versucht:2 Funktionsaufrufe in onChange - ReactJS

/*This is my text area, into ONCHANGE I put options shown below*/ 
<textarea name="NAME" id="ID" ONCHANGE placeholder="PLACEHOLDER" maxLength="4000" rows="7" class="form-control" required></textarea> 

/*This way give me error*/ 
onChange={this.activarBotonEnviar this.contadorDeCaracteres} 

/*This way give me error*/ 
onChange={this.activarBotonEnviar; this.contadorDeCaracteres} 

/*This way only execute last function*/ 
onChange={this.activarBotonEnviar, this.contadorDeCaracteres} 

/*This way only execute last function*/ 
onChange={this.activarBotonEnviar} onChange={this.contadorDeCaracteres} 

Ich arbeite mit ReactJS. Ich hoffe du könntest mir helfen. Danke euch allen.

Antwort

1

Wie ist es möglich, dass eine Variable/Eigenschaft zwei Werte gleichzeitig enthält?

Wir können dem Ereignis Onchange eine einzige Funktion zuweisen. Sie können also entweder eine neue Funktion erstellen und diese beiden Funktionen aufrufen oder eine von einer anderen Funktion aufrufen.

Erstellen neuer Funktion:

onChange = { (e) => { this.activarBotonEnviar(e); this.contadorDeCaracteres(e) } } 

eine Funktion von einem anderen Aufruf:

onChange = { this.activarBotonEnviar } 

und rufen contadorDeCaracteres von activarBotonEnviar Funktion:

activarBotonEnviar(e){ 
    ... 
    this.activarBotonEnviar(); 
} 
1

onChange={this.myFunc}

myFunc(){ 
    this.activarBotonEnviar(); 
    this.contadorDeCaracteres(); 
} 
+0

Vielen Dank. Das ist eine gute Idee, das denke ich auch. Aber ich möchte es ändern alle. Ohne andere Funktionen, die beide aufrufen. : D – JuMoGar

+0

Also, eine andere Variante wird dir helfen :) – Andrew