gpt4 book ai didi

migration - RxJS 迁移 5 到 6 - 使用 TakeUntil 取消订阅

转载 作者:行者123 更新时间:2023-12-04 08:02:25 25 4
gpt4 key购买 nike

在 RxJS 6 中取消订阅的最佳方法是什么?

我的“旧”RxJS 5 代码看起来像这样

export class MyComponent implements OnInit, OnDestroy {
private ngUnsubscribe: Subject<any> = new Subject();

this.myService.myEventEmitter
.takeUntil(this.ngUnsubscribe)
.subscribe(this.onDataPolling.bind(this));

public ngOnDestroy(): void {
this.ngUnsubscribe.next();
this.ngUnsubscribe.complete();
}
}

在迁移到 RxJS 6 时,我运行 rxjs-5-to-6-migrate并得到

this.myService.myEventEmitter.pipe(
takeUntil(this.ngUnsubscribe))
.subscribe(this.onDataPolling.bind(this));

但这不起作用,因为 EventEmitter 没有管道方法。

在 RxJS 6 中取消订阅的最佳方法是什么?

编辑:这在全新安装后确实有效,并且是在 RxJS 6 中取消订阅的最佳方式。

最佳答案

import { takeUntil } from 'rxjs/operators';

.pipe(takeUntil(this.destroyed$)).subscribe({YOUR_CODE})

这应该有帮助。

关于migration - RxJS 迁移 5 到 6 - 使用 TakeUntil 取消订阅,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50606838/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com