【发布时间】:2017-04-26 18:23:52
【问题描述】:
我一直在阅读我应该使用 redux-thunk 或 redux-saga 来处理副作用。 为什么不简单地使用这样的动作创建者来调度多个动作:
function loadProductActionCreator(dispatch) {
dispatch({
type: 'load_product',
})
fetch('api/product').then(
function (r) {
return r.json();
}
)
.then(function (res) {
dispatch({
type: 'loaded_product',
data: res
})
})
}
我试过了,它奏效了 (complete code)。所以我想肯定有一些我不知道的不便之处。
【问题讨论】:
-
您肯定可以这样做。当你手动为每个动作创建者创建包装器时(就像你在第 45-47 行所做的那样) - 你放弃并接受 redux-thunk。
-
所以这是唯一的好处?避免为此类任务创建多个操作?
-
如果您检查 redux-thunk 代码,您会看到它导出的函数只有 4(四)行代码 github.com/gaearon/redux-thunk/blob/master/src/index.js
-
哇。这里还有 Dan Abramov 的非常详细的解释:stackoverflow.com/questions/35411423/…(来自 redux-thunk 主页)
-
你将如何测试它? :D
标签: reactjs redux react-redux redux-thunk redux-saga