从子项输入焦点扩展传播后,无法在Angular组件上重新激活@hostlistener按下事件。

时间:2018-10-26 15:01:47

标签: angular dom event-propagation

对于这个特定问题,stackblitz应该更简单。

它代表了我在TableComponent上遇到的一个实际Angular 2+应用程序问题的简化版本,该问题在@HostListener('keydown')上做出反应,以处理键盘导航到其单元格中。问题在于某些单元格是可编辑的,并在其内容中显示<input>,聚焦于<input>并将其移出,使得TableComponent失去了焦点,因此不再有keydown事件发生在表级别捕获。

您将如何解决该特定问题?

我现在的尝试:

  • window:keydown是一种解决方法,但不是一个好的解决方案,因为它带来的问题多于解决的问题。
  • 在输入聚焦时,停止事件的传播并以编程方式触发组件上的焦点,但是无论如何都不会为表恢复按键事件

0 个答案:

没有答案