Angular2从键盘事件

时间:2017-08-21 20:27:14

标签: angular events

我在gridview中有多条记录。我可以选择从gridview中选择多个记录。

选择后我希望删除这些选定的记录。

有人知道当从键盘按删除按钮时如何调用在angular2中调用delete事件?

3 个答案:

答案 0 :(得分:2)

如果要在任何特定的键盘按钮上执行任何事件,在这种情况下,您可以使用@HostListener。为此,您必须在组件ts文件中导入HostListener。我可以使用以下功能执行 删除键盘按下。

从'@ angular / core'导入{HostListener}; 然后在组件ts文件中的任何位置使用以下函数。

    @HostListener('document:keyup', ['$event'])
      handleDeleteKeyboardEvent(event: KeyboardEvent) {
        if(event.key === 'Delete')
        {
          // remove something... or call remove funtion this.remove();
        }
      }
remove(){ 
// code..
}

答案 1 :(得分:1)

在angular2中使用@HostListener来绑定为我工作的键盘事件。

import { HostListener } from '@angular/core';

@Component({
  ...
})
export class AppComponent {

  @HostListener('document:keypress', ['$event'])
  handleKeyboardEvent(event: KeyboardEvent) { 
    this.key = event.key;
  }
}

有关详细信息,请在此处查看详细信息。

How can I listen for keypress event on the whole page?

答案 2 :(得分:1)

这种方式在我的项目中用于处理删除按钮的使用

@HostListener('document:keydown.delete', ['$event'])

我分享关心的人

@HostListener('document:keydown.delete', ['$event'])
onDeleteComponent(event: KeyboardEvent) {
    this.removeItem(this.selectedDashboardItem);
}