gpt4 book ai didi

javascript - 组合 RXJS 可观察量,但等待第一个开始发出值

转载 作者:行者123 更新时间:2023-11-29 16:30:45 25 4
gpt4 key购买 nike

我有一个视频播放器事件流,当按下某些事件(例如暂停或播放)时会触发该事件流。该流来自使用组合最新的两个可观察量,以便在发出事件时获取当前视频位置。

我需要每 10 秒发出另一个事件并将其放入混合中。一切工作正常,但 ping$ observable 在发出第一个 events$ 值之前开始发出事件,这将是标记播放器已加载的事件,并且可能会记录所有其他事件。

如何将 ping$ 和 events$ 合并到一个流中,但只在 events$ 开始发出值时才让 ping$ 开始?

const events$ = mediaStreams.events$;
const currTime$ = mediaStreams.currentTime$;

const intervalSource$ = interval(2000);
const ping$ = intervalSource$.pipe(map(() => "ping"));

const concatEvents$ = merge(events$, ping$);


const combined = concatEvents$.pipe(
withLatestFrom(currTime$),
map(([first, second]) => {
return {
event: first,
position: second
}
})
)


combined.subscribe(val => console.log('COMBINED', val));

谢谢

最佳答案

ping$.pipe(
skipUntil(events$)
);

ping$ 将被跳过,直到 events$ 发出。

关于javascript - 组合 RXJS 可观察量,但等待第一个开始发出值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58533455/

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