在Angular 2应用程序中,当按住Shift键时,我希望click事件触发一些不同的东西。如何做到这一点?

html如下:

<div class="item" *ngFor="#obj of available" (click)="toggleSelected(obj)"></div>

我想做这样的事情:
  toggleSelected(obj) {
    if(shift is pressed) {
      do this
    } else {
      do that
    }
  }

所以我该如何检测是否按下了Shift键?谢谢!

最佳答案

(click)绑定(bind)中,将$event对象传递给toggleSelected方法:

<div class="item" *ngFor="#obj of available" (click)="toggleSelected(obj, $event)"></div>

toggleSelected方法中,检查事件的shiftKey属性是否为true:

toggleSelected(obj, event) {
  if (event.shiftKey) {
    // do this
  } else {
    // do that
  }
}

关于angular - Angular 2:单击元素时检查Shift键是否按下,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/37078709/

10-10 01:59