質問が冗長に見えるかもしれませんが、mapStateToPropsが呼び出された後にコンポーネントが更新されないようです。以下は私のホームコンポーネント(クラス宣言の外のofc)の中に書いたコードです。React Redux:reduxに接続した後にコンポーネントが更新されない
function mapStateToProps(state) {
const { tickets } = state;
console.tron.log(tickets)
if(!tickets.isLoading) {
return {
loading: false,
ticketsModel: tickets.chunkedData
}
}
return {
loading: true
}
}
export default connect(mapStateToProps)(Home);
すべて正常に動作しますが、小道具への変更はコンポーネントで更新を開始していません。
PS:状態の突然変異が起こったかどうか確認しましたが、それはしませんでした。問題がソートされている:私は
case RECEIVE_TICKETS :
return Object.assign({},state,{
isLoading: false,
chunkedData: action.data.extractChunkedData(),
completeData: action.data.getCompleteData(),
});
EDITのように新しい状態を再作成しました。私が代わりにあなたがそうのように、より簡潔にごmapStateToPropsを書くことができますcomponentWillReceiveProps
多分何かがあなたのホームコンポーネントに右ではないでしょうか?それを投稿できますか?あなたが 'レンダリング'にコンソールログを置くと、状態変更後に起動しないと言っていますか? – azium
コンポーネントコードを共有できますか? –
@ azium。私はまだコンポーネントコードを完成させていない。しかし、状態が変わると、componentWillUpdateを正しく呼び出す必要があります。それが問題の原因です。 –