ReactとReduxでコンポーネントを再利用するにはどうすればよいですか?

非極性

たぶん私は概念を正しく理解していませんでした。私は通常、例で、Counterクラス、次にmapStateToPropsand mapDispatchToProps、そしてを使用connectして「高階コンポーネント」を作成し、それをデフォルトとしてエクスポートします。

このCounterコンポーネントをどのように再利用するのでしょうか。

例えば:

  1. Counter同じページに2つのインスタンスが必要な場合
  2. Counter2ページで必要な場合、それは別のredux状態(元のファイルで定義した状態ではない)に関連している必要があります

And then it dawns on me: it seems in practice, we actually may just define Counter.js without all those mapStateToProps, mapDispatchToProps, and connect, and then we would create IceCreamCounter.js that first import Counter (the plain counter) and does all the mapStateToProps, mapDispatchToProps, and connect to make it into one HOC and export it?

And then if the same page need another counter, then we use mapStateToProps, mapDispatchToProps, and connect in, for example, DrinkCounter.js and do the appropriate mappings to the redux store.

Likewise, if it is the "To Go Order" page, and we need a counter for the number of spoons needed, then we actually would have mapStateToProps, mapDispatchToProps, and connect and create a SpoonCounter.js:

import { connect } from 'react-redux';

import Counter from './Counter';  // the plain counter component

const mapStateToProps = ...;
const mapDispatchToProps = ...;

const SpoonCounter = connect(mapStateToProps, mapDispatchToProps)(Counter);
export default SpoonCounter;

and that's how we achieve component re-use?

なぜこれが以前にどのように行われたのか見なかったのだろうか...それは実際にいくつかの公式ドキュメントやブログで説明されていますか?

ドリューリース

それ自体は公式のドキュメントではありませんが、かなり「公式の」ソースからのものです。コンテナコンポーネントのパターン。これは私をパターンに向かわせた投稿です。

https://medium.com/@dan_abramov/smart-and-dumb-components-7ca2f9a7c7d0

ここであなたはそれに遭遇しました。「ダム」カウンターコンポーネントは、プレゼンテーションコンポーネント、視覚的側面、UIですが、react-redux connectHOCは「スマート」コンポーネントを返し、アプリの状態などの有形のデータをプレゼンテーションコンポーネントに接続します。

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

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

編集
0

コメントを追加

0

関連記事

分類Dev

ReactとReduxでコンポーネントを再利用するにはどうすればよいですか?

分類Dev

UIViewRepresentable UIKitコンポーネントを再利用するにはどうすればよいですか?

分類Dev

再利用可能なコンポーネントを使用するときにtextareaの値を変更するにはどうすればよいですか?

分類Dev

再利用可能なReact / MobXコンポーネントを作成するにはどうすればよいですか?

分類Dev

Reduxフローで非同期データを使用してreactコンポーネントを再利用できるようにするにはどうすればよいですか?

分類Dev

Reactの再利用可能なコンポーネントはどこに保管すればよいですか?

分類Dev

reactjsの別のアプリケーションで再利用可能なコンポーネントを作成するにはどうすればよいですか?

分類Dev

再利用されているコンポーネントにデータを渡すにはどうすればよいですか?

分類Dev

Reactの再利用可能なコンポーネントに小道具として追加のコンポーネントを追加するにはどうすればよいですか?

分類Dev

異なる色で反応コンポーネントを再利用するにはどうすればよいですか?

分類Dev

クラスコンポーネントのブール状態で関数を再利用するにはどうすればよいですか?

分類Dev

複数のアプリに再利用可能なAngular2コンポーネントをバンドルするにはどうすればよいですか?

分類Dev

再利用可能なコンポーネント/モジュールを作成するにはどうすればよいですか?

分類Dev

ReactコンポーネントとReact要素を検出するにはどうすればよいですか?

分類Dev

ユーザーがボタンをクリックしたときに再利用可能なreactコンポーネントを保存するにはどうすればよいですか?

分類Dev

ユーザーがボタンをクリックしたときに再利用可能なreactコンポーネントを保存するにはどうすればよいですか?

分類Dev

Reactとマウスイベントの伝播で再利用可能なコンポーネントを実現するにはどうすればよいですか?

分類Dev

redux接続コンポーネントでtypescriptを使用するにはどうすればよいですか?

分類Dev

React / Redux-ReactコンポーネントのReduxストアから値を表示するにはどうすればよいですか?

分類Dev

角度4では、クリックしたときにスピナーを有効にできる再利用可能なボタンコンポーネントを作成するにはどうすればよいですか?

分類Dev

ルートコンポーネントで定義された変数を別のコンポーネントで再利用するにはどうすればよいですか?

分類Dev

Redux-Form v6で再利用可能なフォームコンポーネントグループを作成するにはどうすればよいですか?

分類Dev

PowerShellスクリプトでスクリプトコードを再利用/インポートするにはどうすればよいですか?

分類Dev

これを React コンポーネントを参照するにはどうすればよいですか?

分類Dev

あるコンポーネントから別のコンポーネントにreduxストアを渡すにはどうすればよいですか?

分類Dev

React Nativeで「FrameLayout」コンポーネントを実現するにはどうすればよいですか?

分類Dev

Reactで非同期コンポーネントを削除するにはどうすればよいですか?

分類Dev

react-redux接続コンポーネントでの再レンダリングを回避するにはどうすればよいですか?

分類Dev

vtl appsyncリゾルバーでコードを再利用/インポートするにはどうすればよいですか?

Related 関連記事

  1. 1

    ReactとReduxでコンポーネントを再利用するにはどうすればよいですか?

  2. 2

    UIViewRepresentable UIKitコンポーネントを再利用するにはどうすればよいですか?

  3. 3

    再利用可能なコンポーネントを使用するときにtextareaの値を変更するにはどうすればよいですか?

  4. 4

    再利用可能なReact / MobXコンポーネントを作成するにはどうすればよいですか?

  5. 5

    Reduxフローで非同期データを使用してreactコンポーネントを再利用できるようにするにはどうすればよいですか?

  6. 6

    Reactの再利用可能なコンポーネントはどこに保管すればよいですか?

  7. 7

    reactjsの別のアプリケーションで再利用可能なコンポーネントを作成するにはどうすればよいですか?

  8. 8

    再利用されているコンポーネントにデータを渡すにはどうすればよいですか?

  9. 9

    Reactの再利用可能なコンポーネントに小道具として追加のコンポーネントを追加するにはどうすればよいですか?

  10. 10

    異なる色で反応コンポーネントを再利用するにはどうすればよいですか?

  11. 11

    クラスコンポーネントのブール状態で関数を再利用するにはどうすればよいですか?

  12. 12

    複数のアプリに再利用可能なAngular2コンポーネントをバンドルするにはどうすればよいですか?

  13. 13

    再利用可能なコンポーネント/モジュールを作成するにはどうすればよいですか?

  14. 14

    ReactコンポーネントとReact要素を検出するにはどうすればよいですか?

  15. 15

    ユーザーがボタンをクリックしたときに再利用可能なreactコンポーネントを保存するにはどうすればよいですか?

  16. 16

    ユーザーがボタンをクリックしたときに再利用可能なreactコンポーネントを保存するにはどうすればよいですか?

  17. 17

    Reactとマウスイベントの伝播で再利用可能なコンポーネントを実現するにはどうすればよいですか?

  18. 18

    redux接続コンポーネントでtypescriptを使用するにはどうすればよいですか?

  19. 19

    React / Redux-ReactコンポーネントのReduxストアから値を表示するにはどうすればよいですか?

  20. 20

    角度4では、クリックしたときにスピナーを有効にできる再利用可能なボタンコンポーネントを作成するにはどうすればよいですか?

  21. 21

    ルートコンポーネントで定義された変数を別のコンポーネントで再利用するにはどうすればよいですか?

  22. 22

    Redux-Form v6で再利用可能なフォームコンポーネントグループを作成するにはどうすればよいですか?

  23. 23

    PowerShellスクリプトでスクリプトコードを再利用/インポートするにはどうすればよいですか?

  24. 24

    これを React コンポーネントを参照するにはどうすればよいですか?

  25. 25

    あるコンポーネントから別のコンポーネントにreduxストアを渡すにはどうすればよいですか?

  26. 26

    React Nativeで「FrameLayout」コンポーネントを実現するにはどうすればよいですか?

  27. 27

    Reactで非同期コンポーネントを削除するにはどうすればよいですか?

  28. 28

    react-redux接続コンポーネントでの再レンダリングを回避するにはどうすればよいですか?

  29. 29

    vtl appsyncリゾルバーでコードを再利用/インポートするにはどうすればよいですか?

ホットタグ

アーカイブ