アクションから別のレデューサーにデータを伝播する

シックスティーズ

カスタム スクロールスパイがあります。2 つのコンポーネントがあります。フラットリストとネストされたディレクトリ。リストには、アクション「スクロール」をディスパッチする onscroll ハンドラーがあります。次に、レデューサーは、ディレクトリの位置が静的か固定か、および現在のセクションが何であるかを反映する新しい状態を返します。現在のセクションが変更されたことをディレクトリ モジュールに伝える方法がわかりません。リスト レデューサーからアクションをディスパッチすることは推奨されないようです。ストアに直接アクセスする方法がわからないため、ディレクトリ モジュールにリスナーを追加する方法がわかりません。コンテキストを介して反応コンポーネントにのみ含まれています。react redux スターターキットを使用しています。

更新: 私のソース コードのサンプル

TrackList/component.js
componentDidMount() {
    let {scrolled} = this.props;
    window.onScroll = scrolled;
}

TrackList/module.js
scrolled(state, action) {
  if (conditions) {
    new_state = make_directory_static_reducer(state);
  }
  else {
    new_state = make_directory_fixed_reducer(state);
  }

  let current_section = get_current_section();
  new_state = current_section_reducer(new_state, current_section);

  return new_state;
}

TrackDir/module.js
action_handlers = {
  set_current_section() {
    // I don't know how to run this when current section is set
  }
}
シックスティーズ

最終的に、いくつかのロジックをコンポーネントに移動しました。反応コンポーネント自体が onscroll イベントを処理し、要素のオフセットに基づいて適切なアクションを起動するようになりました。これは、モジュールとレデューサーの間でやり取りされるデータの量を大幅に削減し、コンポーネントのロジックがレンダリングされた HTML と非常に密接に結びついているので、正しいとさえ感じます。

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

アクションからレデューサーにデータを渡すことができません

分類Dev

Reactとreduxを使用して別のレデューサーからアクションを呼び出す

分類Dev

vuexアクションからvueコンポーネントにエラーを伝播する方法は?

分類Dev

別のアクションからボタンでデータを送信する

分類Dev

別のレデューサー内からレデューサー状態にアクセスする

分類Dev

コレクションビューからデータにアクセスする方法を迅速に

分類Dev

マングースの関係なしに別のコレクションからデータを取得する

分類Dev

選択したアイテムのコレクションから、あるページから別のページにデータを出力する方法は?

分類Dev

xpages:別のデータベース/アプリケーションからのビューを参照する

分類Dev

ある紺碧のサブスクリプションから別のサブスクリプションにデータベースをコピーする

分類Dev

Redux-アクションから他のレデューサーのデータにアクセスします

分類Dev

アクションとレデューサーのどちらをシンプルにする必要がありますか?

分類Dev

Android アプリのアクション バーからメニュー オプションを選択するときに、あるアクティビティから別のアクティビティにデータを渡す

分類Dev

1つのアクション結果から2つ以上のビューにデータを送信する

分類Dev

MongoDBで1つのデータベースから別のデータベースにコレクションをコピーする方法

分類Dev

別のビュークラスからコレクションビューデータをリロードする

分類Dev

アイアンルーターのコレクションから単一のデータを取得する

分類Dev

あるFirestoreコレクションから別のコレクションにデータを選択的にコピーする

分類Dev

あるコレクションから別のMeteorJsにデータを削減します

分類Dev

テンソルフローで、グラデーションが次のレイヤーに伝播する前に、グラデーションを再スケーリングするにはどうすればよいですか?

分類Dev

ゼロからのブックデータサイエンスからの中心極限定理のシミュレーションに関する質問

分類Dev

.net モバイル Web サイトからモバイル デバイスにデータを保存するためのシンプルなクライアント側ストレージ ソリューションはありますか?

分類Dev

Pythonアプリケーションを実行し、ディレクトリ内の別のパスからモジュールをインポートする

分類Dev

すべてのCRUDアクションに単一のReduxレデューサーを使用しますか?

分類Dev

$ out集計を使用して1つのコレクションから別のコレクションに複数のデータを転送する方法

分類Dev

Reduxストアの計算をレデューサーまたはアクションクリエーターに反応させますか?

分類Dev

レデューサーにディスパッチする前にアクションから関数を呼び出す方法は?

分類Dev

Tableauで1つのデータソースから別のデータソースのメジャーにディメンションをリンクする

分類Dev

Redux:データ操作はアクションまたはレデューサーの責任ですか?

Related 関連記事

  1. 1

    アクションからレデューサーにデータを渡すことができません

  2. 2

    Reactとreduxを使用して別のレデューサーからアクションを呼び出す

  3. 3

    vuexアクションからvueコンポーネントにエラーを伝播する方法は?

  4. 4

    別のアクションからボタンでデータを送信する

  5. 5

    別のレデューサー内からレデューサー状態にアクセスする

  6. 6

    コレクションビューからデータにアクセスする方法を迅速に

  7. 7

    マングースの関係なしに別のコレクションからデータを取得する

  8. 8

    選択したアイテムのコレクションから、あるページから別のページにデータを出力する方法は?

  9. 9

    xpages:別のデータベース/アプリケーションからのビューを参照する

  10. 10

    ある紺碧のサブスクリプションから別のサブスクリプションにデータベースをコピーする

  11. 11

    Redux-アクションから他のレデューサーのデータにアクセスします

  12. 12

    アクションとレデューサーのどちらをシンプルにする必要がありますか?

  13. 13

    Android アプリのアクション バーからメニュー オプションを選択するときに、あるアクティビティから別のアクティビティにデータを渡す

  14. 14

    1つのアクション結果から2つ以上のビューにデータを送信する

  15. 15

    MongoDBで1つのデータベースから別のデータベースにコレクションをコピーする方法

  16. 16

    別のビュークラスからコレクションビューデータをリロードする

  17. 17

    アイアンルーターのコレクションから単一のデータを取得する

  18. 18

    あるFirestoreコレクションから別のコレクションにデータを選択的にコピーする

  19. 19

    あるコレクションから別のMeteorJsにデータを削減します

  20. 20

    テンソルフローで、グラデーションが次のレイヤーに伝播する前に、グラデーションを再スケーリングするにはどうすればよいですか?

  21. 21

    ゼロからのブックデータサイエンスからの中心極限定理のシミュレーションに関する質問

  22. 22

    .net モバイル Web サイトからモバイル デバイスにデータを保存するためのシンプルなクライアント側ストレージ ソリューションはありますか?

  23. 23

    Pythonアプリケーションを実行し、ディレクトリ内の別のパスからモジュールをインポートする

  24. 24

    すべてのCRUDアクションに単一のReduxレデューサーを使用しますか?

  25. 25

    $ out集計を使用して1つのコレクションから別のコレクションに複数のデータを転送する方法

  26. 26

    Reduxストアの計算をレデューサーまたはアクションクリエーターに反応させますか?

  27. 27

    レデューサーにディスパッチする前にアクションから関数を呼び出す方法は?

  28. 28

    Tableauで1つのデータソースから別のデータソースのメジャーにディメンションをリンクする

  29. 29

    Redux:データ操作はアクションまたはレデューサーの責任ですか?

ホットタグ

アーカイブ