在angular2中如何检测Ctrl A键按?

cod*_*de1 7 angular

我有一个项目列表,我试图将文件浏览器的文件遍历行为提供给项目列表,这意味着在选择项目后,如果您按住Shift键并按下向下箭头,那些项目应该被选中.

我有一个如下所述的清单.

    <div class="container">
    <ul class="mylist">
    <li  tabindex="1">item1</li>
    <li  tabindex="2">item2</li>
    <li  tabindex="3">item3</li>
    <li tabindex="4">item4</li>
    <li tabindex="5">item5</li>
    <li tabindex="6">item6</li>
    <li tabindex="7">item7</li>
    <li tabindex="8">item8</li>
    <li tabindex="9">item9</li>
    <li tabindex="10">item10</li>
</ul>
Run Code Online (Sandbox Code Playgroud)

如果我正在使用(keydown.ctrl.a)="handleKey($event, item.name)",则无法识别ctrl和单击按钮.我怎样才能在angular2中实现这个目标?

Fai*_*sal 12

使用control而不是ctrl:

(keydown.control.a)="handleKey($event, item.name)"
Run Code Online (Sandbox Code Playgroud)


Veg*_*ega 3

将其放入handleKey以检测 Ctrl + a 被按下:

event.getModifierState && event.getModifierState('Control') && event.keyCode===65
Run Code Online (Sandbox Code Playgroud)

演示版