7

redux の実際の例についていくつか質問があります。

  1. ディスパッチを使用して ajax 呼び出しが直接行われる非同期の例とは異なり、実際の例ではミドルウェアを使用してこれに対処します。反応アプリで redux を使用する場合、どの方法が推奨されますか? なぜ?

    私の推測では、ミドルウェアは再利用可能であるため、複数の ajax 呼び出しを行う必要がある場合、異なる API パスがパラメーターとして渡される限り、1 つの汎用 ajax 呼び出しミドルウェアで十分です。しかし、ディスパッチでも同じことが言えます...

  2. ミドルウェアはいつ実行されますか? ソース コードを見てドキュメントを読むと、次のように理解できますdispatch an action -> all middlewares get executed , ajax calls can be made here and the returned json data can be put inside the action object and pass it onto the reducers-> reducers get executed。私は正しいですか?

4

1 に答える 1

8

ディスパッチを使用して ajax 呼び出しが直接行われる非同期の例とは異なり、実際の例ではミドルウェアを使用してこれに対処します。反応アプリで redux を使用する場合、どの方法が推奨されますか? なぜ?

好きなものを使ってください。人によって好みが異なります。ミドルウェアが提供するような簡潔なコードを望む人もいれば、明示性とまばらさを好む人もいます。

ミドルウェアはいつ実行されますか? ソースコードを見てドキュメントを読むことで、私の理解は次のとおりです。アクションをディスパッチします->すべてのミドルウェアが実行され、ここでajax呼び出しを行うことができ、返されたjsonデータをアクションオブジェクト内に配置してレデューサーに渡すことができます- > レデューサーが実行されます。私は正しいですか?

これは正しいように聞こえます。各ミドルウェアは非同期で、アクションを次のミドルウェアに渡すことができます。それらがレデューサーに到達するまでには、それらは単純なオブジェクトである必要があります。Async FlowMiddlewareのドキュメントでこれについて言及されています。

于 2015-10-16T14:17:57.370 に答える