Ответ 1
Проблема в том, какой хук жизненного цикла вы используете. Элемент еще не ngOnInit
в DOM, когда ngOnInit
. Вместо этого вы должны использовать ngAfterViewInit
.
Не могли бы вы попробовать следующий код:
import { Component, ViewChild, ElementRef, AfterViewInit } from '@angular/core';
import { Observable, fromEvent } from 'rxjs';
@Component({
template: '<button #input>Button</button>'
})
export class ActionOverviewDescription implements AfterViewInit {
@ViewChild('input') button: ElementRef;
ngAfterViewInit() {
let buttonStream$ = Observable.fromEvent(this.button.nativeElement, 'click')
.subscribe(res => console.log(res));
}
}