我们正在运行 SPA。分派(dispatch)的操作(不是组件)是基于身份验证的。
是否可以拦截和转换派发的 Action ?
即
dispatch({
type: 'FOO',
payload: { some: value }
})
function magicMiddleware(action) => decide if authorized.
if no...
dispatch({
type: 'BAR',
payload: { new: value }
})
else continue
请注意,'FOO' 永远不应该命中 reducer
最佳答案
是的,这绝对是中间件的预期用例之一。任何中间件都可以在到达 reducers 之前检查和修改通过管道的任何操作,甚至可以阻止操作继续进行。
您可能需要通读 Middleware Redux 文档中的页面,以及 Redux Middleware 中的文章我的类别 React/Redux links list .这些应该能让您更好地了解中间件的工作原理以及如何使用它们。
关于javascript - redux 中间件 -> 拦截/阻止/转换?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42869767/