2017-05-25 1 views
0

Ich habe ein Problem mit der gedrückten Taste in meiner einfachen ng2 App.Wie kann ich die Taste aus der ng2 App drücken?

Ich möchte nur immer überprüfen, welche Taste gedrückt wurde.

Ich habe Markup mit fokussierten Eingang mit keyup Ereignisse für immer, welche Taste (Brief) gedrückt wird:

<input type="text" class="input-letter" id="input-letter" #box (keyup)="onKey(box.value)"> 
<div> 
    {{key}} 
</div> 

Es funktioniert, aber ich mag einzigen Schlüsselwert jedes Mal, und klaren aktuellen Schlüsselwert erhalten, bei der Moment, in dem alle Schlüssel/Buchstaben an die Schlüsselvariable angehängt werden.

Ich habe versucht, Methode wie clearKey() unten zu verwenden, aber es funktioniert nicht.

clearKey(): void{ 
    this.key = null; // I tried to use ' ' instead null 
} 

onKey(value: string): void { 
    this.clearKey(); 
    this.key = value;  
} 

Danke für irgendwelche Vorschläge, was ich falsch mache.

Antwort

2

Übergeben Sie das Tastaturereignis an die onKey-Funktion anstelle des Eingabewerts.

<input type="text" class="input-letter" id="input-letter" #box (keyup)="onKey($event)"> 
<div> 
    {{key}} 
</div> 

Dann

onKey(e: KeyboardEvent): void { 
    this.clearKey(); 
    this.key = e.key;  
} 
+0

Heh, wusste ich, dass es kleiner Fehler irgendwo war :) wie ein Zauber funktioniert! Danke Kumpel! – Robson

Verwandte Themen