2017-11-14 4 views
0

こんにちは、TabNavigatorで画面に入ると(5つのタブがあります)、そのうちの1つがcomponentWillMountでreduxアクションを呼び出しています。しかし、奇妙なことは決して行動を呼び出すことを止めない理由です。(React-Navigation)画面読み込み時に何度も還元動作と呼ばれます。

enter image description here

+0

アクションのコードをコードと一緒に、コードと一緒に投稿できますか? –

答えて

1

あなたはライフサイクルメソッドの内部からsetStateを呼び出しているとき、これは通常起こります。 Reduxの更新時にコンポーネントが再レンダリングされ、再レンダリングによってReduxが更新されるため、連鎖反応が開始されます。

私はこれがあなたの問題の原因だと思います。

これを修正するには、必要なフィールドのみの更新や、コンポーネントがその1つのフィールドのみを受信する、またはそこで更新しないなど、状態の設定方法を改善する必要があります。

あなたはまた、それので避けるべきであること、あなたがshouldComponentUpdateライフサイクルメソッドを見てする必要があるかもしれませんが、私は一般的に言うif (props === nextProps) dont update

で調査するのは非常に良い。また、このようなif (this && this) dont update

として、条件を追加することができます追跡が困難な奇妙なバグを作り出すことができます。

関連する問題