私はこの非常に単純なコンポーネントを持っています。これはredux状態に接続されており、{fruit, vegetables}
を返します。すべてうまくいきますが、コンポーネント内にグラフがあり、APIから更新されたvegetable
しか受信されない場合、グラフが毎回再作成されているとしましょう。ここでRedux mapStateToProps複数回呼び出されました
は私のコンポーネントです:
const Products = ({ fruit, vegetable }) =>
<div className='Products'>
<div>{vegetable.map(....logic here)}</div>
<div>{Math.random()}</div> // this is to illustrate the component is rendering every time
<Graph>Here will be a chart or a graph with fruit</Graph> //but it gets re-rendered even though there is no new fruit
</div>
const mapStateToProps = (state) => {
return {
fruit: state.data.fruit,
vegetable: state.data.vegetable,
}
}
export default connect(mapStateToProps)(Products)
すべての回は、述べていない事項は、それが全体のコンポーネントを再描画更新されるように私には思えます。
これを防止する手段はありますか?
問題を次のように同じように再レンダリングのためにそこにチェックを導入することができ、更新を取得したくない場合は、私が使用しているということですステートレスコンポーネント –
を使用すると、この純粋なヘルパー(再構成)のような高次コンポーネントを使用できます。 'export default pure(MyStatelessComponent)'のようになります。 – VonD
私は参照してください。私の上の問題を解決するために私が従うことができるどこかの例がありますか? –