【发布时间】:2019-05-03 10:08:32
【问题描述】:
我是 RxJS 的初学者,如果这没有意义,我很抱歉。
当前时间流是这样的:
REMOVE_USER -----------------------> SUCCESS
---------------GET_DEVICE--->SUCCESS--------
高级目标是在删除用户时跳过获取设备。
过于简单的史诗:
const getDeviceEpic = action$ => action$.pipe(
ofType('GET_DEVICE_REQUEST'),
mergeMap(() => from(service...).pipe(
mapTo({ type: 'GET_DEVICE_SUCCESS' }))
))
const removeUser = action$ => action$.pipe(
ofType('REMOVE_USER_REQUEST'),
mergeMap(() => from(service...).pipe(
mapTo({ type: 'REMOVE_USER_SUCCESS' }))
)
)
我将如何处理?
我不确定我是否可以以某种方式添加例如takeUntil(removeUserAPICall$) 到设备应用程序。或者检查REMOVE_USER_REQUEST 是否已被解雇,然后等待REMOVE_USER_SUCCESS 继续。
【问题讨论】:
-
您是否考虑过设置一些标志,例如
removingUser: true在店里,什么时候收到REMOVE_USER?然后忽略GET_DEVICE_REQUEST如果它是真的。 -
这实际上是我现在所做的 - 它不像有很多设备要获取那么优雅,所以我设置
devicesBeingLoaded: [...ids]。我只是好奇是否有办法只使用可观察对象。
标签: rxjs redux-observable