【发布时间】:2021-05-28 00:44:13
【问题描述】:
我有这段代码:
interval(180000).pipe(takeUntil(this._unsub$)).subscribe(() => myFunc())
_unsub$ 是在 ngOnDestroy 方法中触发的主题。 我的问题是 myFunc 永远不会被执行。
另一个组件中的同一段代码可以工作。我不明白为什么。
timer(0, 180000).pipe(takeUntil(this._unsub$)).subscribe(() => myFunc())
有效。 我对计时器的问题是,即使我调用,有时也会调用该函数
ngOnDestroy() {
this._unsub$.next();
this._unsub$.complete();
}
你猜为什么会这样?
【问题讨论】:
-
你是说
myFunc里面的interval()根本不会触发,即使在等待 3 分钟之后? -
没错,这是我的问题。我总是这样使用间隔,它一直有效
-
您是否尝试在
_unsub$发出时注销以确保它不会导致您的订阅提前结束?
标签: angular rxjs intervals subscription