- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在寻找在 redux-observable
的单个 Epic 中调度多个 redux 操作的方法中间件。
假设我有以下 Epic。每当SEARCH
事件发生,Epic 从后端加载数据并调度 RESULTS_LOADED
行动。
searchEpic = (action$) =>
action$
.ofType('SEARCH')
.mergeMap(
Observable
.fromPromise(searchPromise)
.map((data) => {
return {
type: 'RESULTS_LOADED',
results: data
}
})
)
searchPromise
已解决。
RESULTS_LOADED
并发送第二个 Action 。像这样:
resultsLoadedEpic = (action$) =>
action$
.ofType('RESULTS_LOADED')
.map(({results} => {
return {
type: 'MY_OTHER_ACTION',
results
}
})
最佳答案
没有要求您进行一对一的输入/输出比率。因此,您可以使用 mergeMap
发出多个操作(又名 flatMap
)如果您需要:
const loaded = (results) => ({type: 'RESULTS_LOADED', results});
const otherAction = (results) => ({type: 'MY_OTHER_ACTION', results});
searchEpic = (action$) =>
action$
.ofType('SEARCH')
.mergeMap(
Observable
.fromPromise(searchPromise)
// Flattens this into two events on every search
.mergeMap((data) => Observable.of(
loaded(data),
otherAction(data))
))
)
.mergeMap((data) => [loaded(data), otherAction(data)])
关于javascript - redux-observable - 在单个史诗中调度多个 redux 操作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40886655/
我希望创建一个 redux-observable 史诗,它可以独立于我的应用程序的其余部分。它需要: 监听 { type: "SOCKET_TRY_CONNECT"} 的传入操作,这也可能会忽略连接时
我希望创建一个 redux-observable 史诗,它可以独立于我的应用程序的其余部分。它需要: 监听 { type: "SOCKET_TRY_CONNECT"} 的传入操作,这也可能会忽略连接时
This blog JIRA 中有史诗的定义: Epics are significantly larger bodies of work. Epics are feature-level work
我有一个 Azure DevOps 项目,我们正在其中与 Azure-Boards 进行内部协作。我们与外部用户(即无权访问我们的 Azure-Boards/项目的供应商)共享一些任务/错误。我们也不
可能是我是一个菜鸟,还没有完全理解这些东西应该如何工作,但是我在 redux-observable 中有一个史诗,我想用它作为一种方式来创建一个 promise ,它将调度一个 Action 并等待一
这个问题可能是关于redux-observable或 rxjs或两者。 我正在寻找一种通过特定 Action 开始、停止或恢复史诗的方法。例如,当操作 {type: 'START'} 时,史诗(已经是
我想创建一个在开始工作之前监听明确的 Action 序列的史诗。 此史诗在第一次完成后也不需要存在。 我想象的是这样的: function doTheThing(action$) { return
我有一个界面,用户可以在其中触发对同一端点但具有不同参数(在本例中为 UUID)的调用。到目前为止,我一直很享受 switchMap 的行为,每当我发送一个具有相同类型的新 redux 操作时取消我的
我是一名优秀的程序员,十分优秀!