需求:
表单Submit后需要从后端做 新增or修改,
为避免User重複触发,
打算将Submit设计为 Observable,
可以搭配Rxjs的exhaustMap等Operator使用。
html
加上 #submitButton
<button #submitButton> Test</button>
ts
对button建立一个 ViewChild
@ViewChild('submitButton') submitButton;
利用 Rxjs 的 fromEvent
将 button click 变成 Observable
物件
需要再 ngAfterViewInit
中使用
ngAfterViewInit(): void { const click$ = fromEvent(this.submitButton.nativeElement, 'click'); click$.subscribe(e => console.log(e)); }
后续就可以对 click$ 搭配其他 Rxjs Operator 做应用。