gpt4 book ai didi

rxjs - 在长管道中传递/保留值的明智方法

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

假设我有以下 rxjs 管道:

start$.pip(
map((id)=> {}), //I want to save the "id" value to be used in the end of the pipe
map(...),
switchMap(...),
map(...),
switchMap(...),
map(...),
switchMap(...),
switchMap(...)//I need the original "id" value here
).subscribe()

有没有办法在整个点中保留“id”值,以便可以在管道末端使用它?

动机:它经常出现在 NGRX 效果中,我想使用触发源操作的原始有效负载数据来生成新操作。

最佳答案

我认为正确的方法是再次关闭

const processId = (id) => observableOf(id)
.pipe(
map(() => { ... }),
map(...),
switchMap(...),
map(...),
switchMap(...),
map(...),
switchMap(...),
switchMap(...) // Use id here
);

const getPipe = () => start$
.pipe(switchMap(processId));

将局部变量存储为 getPipe 中的副作用是可以的,但如果 start$ Observable 发出更多值,它可能会中断。

关于rxjs - 在长管道中传递/保留值的明智方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51578014/

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