首页 文章

keyup / keydown vs输入事件 - 角度2

提问于
浏览
0

我试图捕获角度为2的自动完成指令的所有键盘事件 . 我已将其分为3种不同类型的事件 .

1) keyup/keydown -> space , arrow up , arrowdown , enter , escape

@HostListener('window:keyup', ['$event'])
      keyDownEvent(event: KeyboardEvent) { 

 switch (event.code) {
      // keycode 32
      case "Space" :
      //handle space event
        break;

        //keycode 38
      case "ArrowUp":
        //handle arrow up event
        break;

        //keycode 40
      case "ArrowDown":
        //handle arrow down event
        break;

        //keycode 13
      case "Enter":
        //handle enter 
        break;

        //keycode 27
      case "Escape":
        //handle escape event
        break;

      default :
        break;
    }
      }

2) blur

@HostListener('blur', ['$event'])
  bluEventHandler(event: any){
 }

3) input (键盘上的所有其他键除了#1和#2中提到的内容,如a-z,A-z,特殊字符等)

????

我不知道如何捕获输入事件 . 我试图将我的角度代码转换为角度2,这是它在角度1中的样子

$(this.element).bind("keydown", function (event) {
}
 $(this.element).bind("input", function (event) {
}
 $(this.element).bind("blur", function (event) {
}

1 回答

  • 2

    您可以使用相同的方式收听 input ,就像 keyup 一样

    @HostListener('input', ['$event'])
    

    Plunker example

相关问题