使用Angular 2从按钮的onClick事件创建可观测对象的首选方式是什么?

我不确定在组件代码中从DOM中获取native-element 是否被认为是最佳实践(我该怎么做?),或者如果有其他我不知道的捷径.

推荐答案

You can use Observable.fromEvent like explained in Angular2 RxJS getting 'Observable_1.Observable.fromEvent is not a function' err或

或者只是向前看一看

private obs = new Subject();
public obs$ = this.obs.asObservable();

@HostListener('click', ['$event']) 
clickHandler(event){
  this.obs.next(event);
}

<button (click)="obs.next($event)">

Angular相关问答推荐

*ngFor循环中令人困惑的Angular 行为

tabindex on button on button in MatMenu in angular不工作

Angular 16:CSRF配置:我仍然可以使用HttpXsrfInterceptor和HttpXsrfCookieExtractor类吗?Inteli-J说他们不存在

Angular :为什么我得到了一个可观察到的共鸣

除非将 signal.set 作为间隔的一部分调用,否则Angular 信号效果不会执行

无法在 app.component.html 中呈现自定义组件

手动关闭 SSE 连接:Angular

如何在 form.value 中禁用复选框

Angular JWT Token 被添加到lazyUpdate 而不是 HttpHeaders 中的标头

如何访问父组件中提供的 TemplateRef 内的服务?

console.log 返回 api 数据但 ERROR TypeError: Cannot read properties of undefined reading 'name'

Subject.complete() 是否取消订阅所有听众?

Angular 2.0 中 $scope 的替代品

如何停止在 ngOnInit() 之前调用的 ngOnChanges

如何在 Angular 4 中使用 Material Design 图标?

在 Angular 2 中打印 Html 模板

实现autocomplete功能

如何每隔一段时间发出 HTTP 请求?

Angular 4 Bootstrap 下拉菜单需要 Popper.js

Angular 4 - 获取输入值