Je veux gérer un événement click + événement CTRL keypress dans la même fonction dans mon fichier component.ts, mais je ne trouve pas de solution nulle part. J'ai essayé:Angular 4 - gérer deux événements en même temps
@HostListener("click")
onDropdownItemClick(evt: keyboardEvent) {
console.log(evt.keyCode);
}
mais il retourne juste « erreur TypeError: Impossible de lire la propriété « codeTouche » undefined »
J'ai aussi essayé cela aussi:
@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");
}
}
Mais c'est ne fonctionne pas non plus. Quelqu'un a des suggestions sur la façon d'attraper les deux événements en même temps?
Merci pour la réponse, mais je reçois cette erreur sur le @HostBinding: « TS2346: paramètres fournis ne correspondent à aucune signature de la cible d'appel. " Une idée de pourquoi c'est? – Vluiz
Désolé, les choses '['$ event']' n'étaient pas nécessaires mais j'ai oublié de les enlever. Si vous voulez les utiliser, vous devrez ajouter un paramètre à la signature de la fonction comme 'onCtrlDown (e)'. –
@yurzui merci, je deviens vraiment bâclé: -/Merci pour les corrections! –