我正在阅读an article有关rxjs concatMap
运算符的信息。这个家伙会建立一个自动保存的表单,即,只要用户输入字母,就会使用http请求保存数据
this.subscription = this.form.valueChanges
.pipe(concatMap(formValue => this.http.put(`/api/course/${courseId}`, formValue)))
.subscribe(saveResult => ... handle successful save ...);
我希望能够在ngOnDestroy()
中从valueChanges
取消订阅,但是this.subscription
订阅是指http
可观察。那么如何退订valueChanges
?
答案 0 :(得分:1)
在ngOnDestroy函数中,只需使用对订阅的引用即可。创建可观察对象时,它会返回一个订阅对象,该对象公开了unsubscribe()
方法。
ngOnDestroy{
this.subscription.unsubscribe();
}