Dan*_*ger 10 javascript reactjs redux react-redux
在redux文档中给出的示例中,似乎总是从中间件返回一些东西.但是,当我打电话next(action)并返回时,一切似乎都正常.
在redux源中,它似乎在调用dispatch每个中间件的返回值.
这让我相信它提供了一种在所有中间件运行后运行调度的可选方法.
有人可以确认我们是否必须始终从中间件返回值,如果是这样,为什么?
mar*_*son 15
我实际上在前几天发了推文.
store.dispatch()默认情况下,该方法返回传入的操作.由于中间件管道包装dispatch(),每个中间件都可以在路上改变通过管道传递的值,并更改传回的返回值.
许多中间件依赖于能够自己返回值,或者使用返回值返回.例如,redux-thunk返回从thunk函数返回的任何内容,这通常用于能够从thunk返回promise以便链接dispatch(somePromiseThunk()).then( () => {}).
如果中间件调用next(action)但实际上没有从中返回值next(),则可能会破坏这些功能.具体行为取决于您设置的中间件,以及如何订购它们.
因此,"正确"的做法是默认情况下每个Redux中间件应该 return next(action)默认,除非它明确想要改变返回值行为.这确保了最佳兼容性和组合中间件的能力.
| 归档时间: |
|
| 查看次数: |
904 次 |
| 最近记录: |