4
我想在我的component.ts文件的同一个函数中处理一个click事件+ CTRL按键事件,但我似乎无法在任何地方找到解决方案。我已经试过:Angular 4 - 同时处理两个事件
@HostListener("click")
onDropdownItemClick(evt: keyboardEvent) {
console.log(evt.keyCode);
}
,但它只是返回“错误类型错误:无法读取属性未定义‘键代码’”
我也试过这太:
@Component({
selector: '....',
templateUrl: '....',
host: {
'(window:keydown)': 'findKey($event)',
'(window:mousedown)': 'findKey($event)'
}
});
findKey(event) {
if(event.ctrlKey && event.which === 1){
console.log("CTRL + mouse-click");
}
}
但它的不工作。任何人都有关于如何同时捕获这两个事件的建议?
谢谢你的答案,但我得到的@HostBinding这个错误:“TS2346:提供的参数不匹配任何签名的呼叫目标。“任何想法,为什么? – Vluiz
对不起,'['$ event']'事情没有必要,但我忘了删除它们。如果你想使用它们,你需要添加一个参数给函数签名,比如'onCtrlDown(e)'。 –
@yurzui谢谢,我真的很sl:: - /谢谢修复! –