問題タブ [redux-api-middleware]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
725 参照

javascript - redux-api-middleware エンドポイントのグローバル設定を行う方法

redux-api-middleware以下のような API 呼び出しを作成できます。

問題は、すべてのリクエストに対して、共通のエンド ポイント http://localhost:1337ヘッダー コンテンツ タイプ、および認証トークン の設定を使用していることです。

これらの設定をグローバルに設定する場所が必要です。公式ドキュメントから解決策を見つけることができません。誰もこれを知っていますか?またはこれを達成するためのアイデアはありますか?

前もって感謝します..

0 投票する
3 に答える
1400 参照

javascript - redux-api-middleware はどのようにストアにデータを追加しますか?

バックグラウンド

redux と react ルーターを使用して、ユニバーサルな反応アプリケーションを作成しています。サーバー側のレンダリングと基本的な redux アクション (ストアでブール値を変更する) を使用して、ほとんどのアプリケーションをセットアップしました。ここで、アプリのデータを取得するためにいくつかの API 呼び出しを行いたいと思います。

現在の実装

redux-api-middleware を使用することをお勧めしますが、ストアに追加するデータを取得できません。ドキュメントに従って、このようなアクションを作成しました。

example-action.js

このアクションは、ページのボタン クリックで実行されます。アクションが発生するのがわかりますが、ストアには何も入りません。SUCCESSアクション用のカスタム コードを追加してconsole.log()、応答できましたが、ストアにデータを取得できませんでした。

また、ドキュメントに記載されているのと同じ方法でミドルウェアをストアに追加しました。

configureStore.js

これまでに試した

payloadこれまでのところ、アクションをエクスポート可能なシンボルにしてレデューサーで呼び出し、redux-api-middlewareの属性から得られる現在の状態にデータをマージしようとするなど、アクションでさまざまなことを試しましたが、運がない。

質問

私は本当に2つの質問があります

  • ドキュメントにレデューサーがないのはなぜですか?これは見過ごされているだけですか?それとも、応答からのデータがストアに直接送られるだけですか?
  • 呼び出したデータがストアに追加されないのはなぜですか (何が足りないのですか)?

この問題に関するヘルプ、説明、または建設的な批判は本当に感謝しています。

0 投票する
1 に答える
2114 参照

reactjs - redux-api-middleware でプレーン/テキストをフェッチする

でtxtファイルを取得できますredux-api-middlewareか? はいの場合、どのように?ドキュメントによると、undefinedアプリケーション/JSONに準拠していない場合は本文が設定されていますが、取得するのは単純なテキスト/プレーンです

0 投票する
1 に答える
638 参照

asynchronous - redux-api-middleware を使用した非同期アクションの連鎖

Redux、redux-thunk、react-router、redux-api-middleware を使用した React アプリがあります。

アプリのページ コンポーネントをレンダリングするには、2 つの API エンドポイントにアクセスし、その結果を redux ストアに保存する必要があります。

現在、両方のアクションを同時にディスパッチしています。これにより、あるアクションの結果が他のアクションよりも先に完了すると、問題が発生します。したがって、2 つ目のアクションをディスパッチする前に、1 つのアクションが完了していることを確認する必要があります。

すべてのドキュメントを読んだ後、redux-api-middleware でこれを実現する方法を理解するのに苦労しています。

これは私の現在のコンポーネントです:

私が試してみました:

catchしかし、これはの代わりに が呼び出されることにつながりthenます。ただし、GET_SETTINGS_SUCCESS アクションは実際には完了しているため、catch が呼び出される理由がまったくわかりません。私は何を間違っていますか?

これはアクションジェネレーターです:

0 投票する
1 に答える
8323 参照

reactjs - 複数のディスパッチ アクションのデバウンス

2 つの別個の API からの結果を必要とするオートコンプリート コンポーネントがあります。両方の API は、オートコンプリートであるため、デバウンスされたピリオドと共に呼び出す必要があります。私はreact-reduxとredux-apiを使用しています。これは私がこれまでに持っているものです。私が返す検索方法を見てください。問題は、コールが 1 つだけ発生することです。

私の AutoCompleteContainer.js で

コンポーネント レベルでデバウンスする必要がありますか? それともここでできますか?

0 投票する
1 に答える
2450 参照

javascript - Next.js と redux-api を動作させる方法 (next-redux-wrapper を使用)

サーバーサイド レンダリング (SSR) を使用するのに苦労していますredux-api。アプリは、クライアント側レンダリング (CSR) だけで正常に動作します。

SSR が機能するには、Next.js のgetInitialProps関数でデータを利用できるようにする必要があります。私はnext-redux-wrapperそれを一緒にバインドするために使用しようとしています。

現在のステータス:

少なくとも今はstore入りましたが、アプリの CSR (前) バージョンにはなかっgetInitialPropsた奇妙なメッセージが表示されます。そしてもちろん空です。Error: only absolute urls are supportedwithReduxthis.props.oneLesson.data

makeStorestateサーバーで生成された呼び出しで=を取得undefinedしています。おそらくそれが手がかりです。

redux-apiまた、同様に機能する別のものに置き換えることもできます。

更新 1:すべての URL をフルにすることで、Redux が API エンドポイントにヒットするようになりました。ただし、1 ページのリロードではmakeStore3 回以上呼び出しが行われ、最初の呼び出しのみに正しいスラッグが含まれます。コンソール出力を参照してください。

更新 2:ブレークスルー: から promise を返すと、getInitialPropsSSR が機能します。これで、クライアント側のレンダリングがうまく機能し、十分に面白くなりました。