【发布时间】:2017-02-22 11:08:31
【问题描述】:
我只是进入一般的 RxJs 和 Observables。我掌握了一个想法,即您通常可以通过使用“takeUntil()”来创建“自包含”的 Observable。
在一门在线课程中,我看到老师说“我在 10 年内没有退订任何东西,因为我总是使用 takeUntil() 来创建结束的事件流”。这是他的例子:
var getElementDrags = elmt => elmt
.mouseDowns.map(() => document.mouseMoves.takeUntil(document.mouseUps))
.concatAll();
这对于“内部” Observables 来说非常好。但是“mousedown”上的一个外部 Observable 永远不会真正取消订阅......
我们还需要退订吗? 用户离开页面时取消订阅/处置仍然是一种好习惯吗?
【问题讨论】:
-
在你的代码中你没有订阅任何东西,所以没有什么可以退订的。
-
@torazaburo:代码有点“伪”——但我认为有订阅可以获取“elmt.mouseDowns”Observable...
标签: rxjs unsubscribe