有没有办法在按键(输入)时触发 select 事件?

Is there a way to trigger the select event on key press (enter)?

我正在尝试使图表键盘可访问,并且需要一种在按键时触发“select”事件的方法。

<ngx-charts-advanced-pie-chart>
   (select)="onSelect($event)"
   ...
</ngx-charts-advanced-pie-chart>

当点击由 (select) 输出处理时,我有一个函数调用。我需要为回车键做类似的事情,比如 (keydown.enter)="onSelect($event)"。问题是从 (keydown.enter) 操作传递的 $event 不同于 (select) 操作。它有一堆 DOM 相关元素,而 (select) 事件有一个格式良好的名称和被单击对象的值,这正是我需要的。

有没有办法通过按键触发 (select) 输出?或者有没有办法获得从 (select) 输出传递的相同 $event ?无论哪种方式都适合我。

由于 (select) 事件是在鼠标单击时触发的,而您希望它在键盘按下时触发,因此根据定义这是不可能的。您已经提到您正在尝试制作图表 keyboard-accessible。如果您已准备好基本导航,那么也许您可以利用它来收听 (activate) 并从那里获取数据。

不过,我应该警告您,ngx-charts 的键盘导航存在一些未解决的错误。因此,即使实现基本导航也可能比平时更难。

https://github.com/swimlane/ngx-charts/issues/1329
https://github.com/swimlane/ngx-charts/issues/107