Chcę utworzyć usługę, która wykrywa wszystkie wejścia klawiatury, tłumaczy obrysy klawiszy na akcje oparte na konfigurowalnym odwzorowaniu i eksponuje obiekty obserwowalne, z którymi mogą wiązać się różne elementy, aby reagować na określone naciśnięcia przycisków.Czy można używać HostListener w usłudze?
Poniżej znajduje się uproszczenie mojego kodu do tej pory, działało, gdy HostListener był w komponencie, ale teraz przeniosłem go do usługi, która nigdy nie odpala, mimo że jest zdecydowanie inicjowana. Czy nie można wykryć takiego wejścia w usłudze?
import { Injectable, HostListener } from '@angular/core';
import { Subject } from 'rxjs/Subject';
@Injectable()
export class InputService {
@HostListener('window:keydown', ['$event'])
keyboardInput(event: any) {
console.log(event);
}
}
Chyba nie is't możliwe. Użyj 'window.addEventListener' zamiast – yurzui