1. ホーム
  2. reactjs

[解決済み] redux-thunkとredux-promiseの違いは何ですか?

2023-01-11 19:08:17

質問

私が知っている限りでは、間違っていたら訂正してください。 redux-thunk は非同期関数とデバッグ値をアクション自体にディスパッチするのを助けるミドルウェアで、私が を使用した場合は、"redux-promise を使ったときは、Actionがプレーンなオブジェクトだけをディスパッチする例外を投げるので、自分で仕組みを実装しないと非同期関数を作れませんでした。

この2つのパッケージの大きな違いは何でしょうか?単一ページのreactアプリで両方のパッケージを使用する利点はありますか、それともredux-thunkに固執することで十分ですか?

どのように解決するのですか?

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 を使えば、1つのアクションクリエイターで何度もディスパッチすることができます。どちらを選ぶか、あるいは両方を選ぶかは、完全にあなたのニーズやスタイルに依存します。