2017-05-01 4 views
0

Ich versuche programmatisch eine Nachricht auf WhatsApp-Web zu senden. Zuerst injiziere ich etwas jQuery auf der Seite, um die Auswahl der Komponenten zu erleichtern. Ich habe dann den Inhalt des Eingabefeldes mit:Wie erkennt react.js einen Tastendruck und wie simuliert man ihn?

$(".input").html("This is a test message"); 

Wenn der Schalter wieder von der Konsole auf der Seite, ich versuche, das Feld zu drücken Eingabe einreichen und die Nachricht nicht senden, aber wenn ich schreibe etwas , es ermöglicht Senden.

Also ich dachte, es muss ein Ereignis ausgelöst werden, wo es entdeckt, dass Inhalt auf dem Feld eingegeben wird, so versuchte ich Auslösung: "ändern", "keyup", "keydown" und viele andere Ereignisse, aber Trotzdem ermöglicht es keine Einreichung.

Da ich mit react nicht vertraut bin, bin ich jetzt neugierig wie es den Eingang erkennt.

Wenn ich den Buchstaben "E" auf meiner Tastatur drücke, gibt es eine browserbeschränkte Anzahl von Ereignissen, die Javascript (und damit reagieren) identifizieren kann, oder? Ich würde sagen, "keydown", "keyup" und "keypress", aber trotzdem reagiert nicht, wenn ich diese programmatisch trigger, nur wenn ich tatsächlich auf meine Tastatur tippe.

Meine Frage: Wie erkennt react.js einen Tastendruck und wie kann ich diese Ereignisse programmatisch auslösen?

Antwort

0

Sie können onChange-Ereignis verwenden, um Ihren Text zu erfassen.

class X extends React.Component{ 
     changeEvent() 
     { 

     this.setState({ 
       [e.target.name] : e.target.value 
      }); 

     } 

      render(){ 
      return (

      <div> 
    ) 
    } 
    } 

      <input type="text" name="firstname" onChange={this.changeEvent.bind(this)} 
     <div> 
     ) 
Verwandte Themen