@HostListener('window:keydown') vs @HostListener('window:keydown.arrowup') + @HostListener('window:keydown.arrowdown')?
@HostListener('window:keydown') vs @HostListener('window:keydown.arrowup') + @HostListener('window:keydown.arrowdown')?
当我们想要监听两个键(在本例中为 arrowUp 和 arrowDown)时,哪个性能更好,每个键一个监听器,还是一个通用的?
我有时会遇到键盘输入滞后的情况,我现在的方法是缩小 @HostListener('window:keydown')
事件在代码中传播的范围,使其仅在需要时触发(而不是检查触发的键)在监听函数中被按下),但我不确定最好的解决方案。
有人可以阐明一下吗?
谢谢
PS: 我正在使用 Angular 7
@HostListener('window:keydown.arrowup',['$event'])
@HostListener('window:keydown.arrowdown',['$event'])
应该表现更好,因为触发事件时要处理的代码更少。如果您在所有 keydown
事件上放置一个侦听器并手动过滤,将会有更多任务。
当我们想要监听两个键(在本例中为 arrowUp 和 arrowDown)时,哪个性能更好,每个键一个监听器,还是一个通用的?
我有时会遇到键盘输入滞后的情况,我现在的方法是缩小 @HostListener('window:keydown')
事件在代码中传播的范围,使其仅在需要时触发(而不是检查触发的键)在监听函数中被按下),但我不确定最好的解决方案。
有人可以阐明一下吗?
谢谢
PS: 我正在使用 Angular 7
@HostListener('window:keydown.arrowup',['$event'])
@HostListener('window:keydown.arrowdown',['$event'])
应该表现更好,因为触发事件时要处理的代码更少。如果您在所有 keydown
事件上放置一个侦听器并手动过滤,将会有更多任务。