小能豆

redux-thunk 和 redux-promise 有什么区别?

javascript

据我所知,如果我错了请纠正我,redux-thunk是一个中间件,它可以帮助我们在操作本身中分派异步函数和调试值,而当我使用redux-promise时,如果不实现我自己的机制,我就无法创建异步函数,因为 Action 会引发仅分派普通对象的异常。

这两个包之间的主要区别是什么?在单页 React 应用中同时使用这两个包有什么好处吗?或者坚持使用 redux-thunk 就足够了?


阅读 52

收藏
2024-06-12

共1个答案

小能豆

redux-thunk允许你的动作创建者返回一个函数:

function myAction(payload){
    return function(dispatch){
        // use dispatch as you please
    }
}

redux-promise允许他们返回承诺:

function myAction(payload){
    return new Promise(function(resolve, reject){
        resolve(someData); // redux-promise will dispatch someData
    });
}

如果您需要异步或有条件地分派操作,这两个库都很有用。redux-thunk还允许您在一个操作创建器中分派多次。选择其中一个、另一个或两者完全取决于您的需求/风格。

2024-06-12