如何从ng2 app获得按键?

时间:2017-05-25 19:36:10

标签: javascript angular typescript

我在简单的ng2应用程序中按下按键有问题。

我只想检查每次按下哪个键。

我创建了带有keyup事件的焦点输入的标记,用于获取按下哪个键(字母):

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

它有效,但我想每次都获得单个键值,并清除当前键值,此时所有键/字母都附加到键变量。

我尝试使用下面clearKey()之类的方法,但它无效。

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

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

感谢您提出的任何建议。

1 个答案:

答案 0 :(得分:2)

将键盘事件传递给onKey函数,而不是输入值。

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

然后

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