为什么在输入中未定义我的事件变量?

时间:2019-10-23 19:16:41

标签: angular typescript

HTML:

<input (input)="test(1, $event)">

打字稿:

test(index: number, event?) {
    console.log(event);
}

我试图查看用户是否在输入上按下了退格键,但是我无法使用$ event变量获得任何用户输入。我在做什么错了?

1 个答案:

答案 0 :(得分:1)

使用keydown / keypress / keyup Keyboardevent来识别用户与键盘的交互。

角度事件绑定可响应任何DOM事件。 keydown事件的用法示例:

  <input (keydown)="onKeydown($event)">

onKeydown(event) {
  console.log("event.key:" + event.key)
  if (event.key === "Backspace") {
    console.log(event);
  }
}

其他选项,触发特定键的keydown事件。在以下示例中,仅在按下backspace时事件才会触发。

<input (keydown.backspace)="onKeydownBackspace($event)">

onKeydownBackspace(event) {
  console.log("event.key:" + event.key)
}