检测史诗中两个动作的顺序
detecting sequence of two actions in Epic
我要抓紧时间:
当 FIRST_ACTION 派遣,然后 SECOND_ACTION 派遣
目前我的代码看起来像这样。它运行良好,符合我的预期。
action$.ofType(FIRST_ACTION).pipe(
mergeMap(() =>
action$.ofType(SECOND_ACTION).pipe(
take(1),
mergeMap(() => /* do something*/),
)
)
)
有没有更好的方法来检测这样的时间?
您可以尝试使用 zip。
zip(action$.ofType(FIRST_ACTION), action$.ofType(SECOND_ACTION)).pipe(
mergeMap(([firstAction, secondAction]) =>
// return observable
)
)
你确定你的第一个动作总会有相应的第二个动作吗?请注意,zip 在生成值之前等待来自每个可观察源的值。
我要抓紧时间: 当 FIRST_ACTION 派遣,然后 SECOND_ACTION 派遣
目前我的代码看起来像这样。它运行良好,符合我的预期。
action$.ofType(FIRST_ACTION).pipe(
mergeMap(() =>
action$.ofType(SECOND_ACTION).pipe(
take(1),
mergeMap(() => /* do something*/),
)
)
)
有没有更好的方法来检测这样的时间?
您可以尝试使用 zip。
zip(action$.ofType(FIRST_ACTION), action$.ofType(SECOND_ACTION)).pipe(
mergeMap(([firstAction, secondAction]) =>
// return observable
)
)
你确定你的第一个动作总会有相应的第二个动作吗?请注意,zip 在生成值之前等待来自每个可观察源的值。