首页 > 解决方案 > RxJS - 如何仅在第一次订阅时触发可观察流

问题描述

我有一个 observable,当订阅它时,它会触发逻辑链/流。这个 observable 可以在我的多个组件中订阅,因为我需要它的逻辑在我的应用程序的多个位置处于活动状态。但是,如果它过去已经被触发(通过订阅),我不希望它的逻辑被第二次触发。我该怎么做?

换句话说,我如何才能仅在第一次订阅时触发我的 observable 流?

标签: angularrxjsobservable

解决方案


我认为shareReplay(1)运营商会做你想做的事:它将在每个订阅上发出最后一个“计算”值。

请参阅文档以供参考:https ://www.learnrxjs.io/learn-rxjs/operators/multicasting/sharereplay


推荐阅读