2016-07-15 25 views
2

Ich möchte die Eingabe abbrechen und das Feld in meiner App löschen, wenn der Benutzer den Escape-Schlüssel eingibt. Wir haben versucht, in der keyBindingFn nach e.which === 27 zu suchen, aber diese Funktion wird niemals aufgerufen, wenn die Escape-Taste gedrückt wird (sie wird nur für normale Schlüssel, Zusatztasten und Pfeiltasten aufgerufen). Wie kann ich einen Escape-Tastendruck in draft.js erkennen?Wie bekomme ich draft.js, um den Escape-Schlüssel zu erkennen?

Antwort

2

-Editor-Komponente hat onEscape Eigenschaft

<Editor 
 
    editorState={this.state.editorState} 
 
    onChange={this.onChange.bind(this)} 
 
    onEscape={keyEvent=>console.log('Escape just pressed')} 
 
    ref="editor" 
 
/>

+0

Dank! Das funktioniert großartig. –

0

Wir lösten dies mit einem onKeyDown-Handler im umschließenden div des Editors. Ich bin nicht begeistert von der Lösung und hoffe, dass jemand einen besseren hat, aber das funktioniert zumindest.