Мне нужно создать пользовательское событие в угловом компоненте и обработать его в директиве. Как это может быть достигнуто
Я попытался использовать @Output в Компоненте и использовал @HostListner в директиве, чтобы посмотреть, смогу ли я прослушать это, но это не удалось. Поймите, что это пользовательское событие, а не событие по умолчанию, такое как щелчок или наведение мыши.
@Component({
...
template: `<div appOnInit> </div>
...
})
...
// In the component class
@Output() initReady: EventEmitter<string> = new EventEmitter();
ngOnInit() {
....
this.initReady.emit('');
}
==========
// Directive
@Directive({
selector: '[appOnInit]'
})
export class OnInitDirective {
constructor() { }
@HostListener('initReady', ['$event'])
onInitReady(event: string) {
console.log('Init info:' + event);
}
}
Требуется возможность прослушивать пользовательское событие, созданное в компоненте. Или я должен использовать другой механизм здесь?
Пожалуйста, помогите, спасибо.