React Redux中多个中间件的顺序
Order of multiple middleware in React Redux
如果我有多个中间件(例如 3 个)都捕获一个动作会怎样?它们是否按照商店创建中定义的顺序触发?
createStore(reducer,applyMiddleware(middle1, middle2, middle3));
middle1 会先被触发,然后是 middle2,然后是 middle3? (调用 next() 时)
我可以在特定操作上强制在 middle2 之前调用 middle3 吗?
中间件管道与您传递给 applyMiddleware()
的顺序完全匹配。所以,在那个例子中:
- 调用
store.dispatch()
将操作传递给 middle
- 当
middle1
调用next(action)
时,它转到middle2
- 当
middle2
调用next(action)
时,它转到middle3
- 当
middle3
调用next(action)
时,它会转到实际存储并执行reducer逻辑
不,您不能在创建商店后重新订购中间件。
如果我有多个中间件(例如 3 个)都捕获一个动作会怎样?它们是否按照商店创建中定义的顺序触发?
createStore(reducer,applyMiddleware(middle1, middle2, middle3));
middle1 会先被触发,然后是 middle2,然后是 middle3? (调用 next() 时) 我可以在特定操作上强制在 middle2 之前调用 middle3 吗?
中间件管道与您传递给 applyMiddleware()
的顺序完全匹配。所以,在那个例子中:
- 调用
store.dispatch()
将操作传递给middle
- 当
middle1
调用next(action)
时,它转到middle2
- 当
middle2
调用next(action)
时,它转到middle3
- 当
middle3
调用next(action)
时,它会转到实际存储并执行reducer逻辑
不,您不能在创建商店后重新订购中间件。