Jaroslaw K.
Jaroslaw K.

Reputation: 5384

Is possible to set HostListener on specific button?

I would like to call some method, when ESCape button will be pressed. I did it in this way:

@HostListener('window:keydown', ['$event'])
clickEscape(event: KeyboardEvent) {
    //if ESC was pressed
    if(event.keyCode === 27) {
        this.someMethod();
    }
}

But clickEscape method will be called every time, when user click any button on keybord. And my question is:

Is it possible to set HostListener so that method will be called only when detect ESCape button? I was thinking about something in style:

@HostListener('window:keydown["ESCAPE"]')
someMethod() {
    //...
}

Is there similar event?

Upvotes: 3

Views: 1427

Answers (1)

Poul Kruijt
Poul Kruijt

Reputation: 71951

You can indeed use keydown.escape:

@HostListener('window:keydown.escape')
someMethod() {
    //...
}

Upvotes: 5

Related Questions