該問題可能看起來多餘,但在調用mapStateToProps後,組件似乎沒有更新。下面是我在Home Component(類聲明之外的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:我檢查是否有任何狀態突變發生,但沒有它din't。我喜歡重新
case RECEIVE_TICKETS :
return Object.assign({},state,{
isLoading: false,
chunkedData: action.data.extractChunkedData(),
completeData: action.data.getCompleteData(),
});
編輯一個新的狀態:該問題已排序。我傻了檢查內部componentWillMount更新,而不是componentWillReceiveProps
或許真的是不是就在你家的組成部分?你可以發佈嗎?你是說如果你把一個控制檯登錄到'render',它在狀態改變後不會觸發? – azium
你能分享你的組件代碼嗎? –
@azium確切地。我還沒有完成我的組件代碼。但是當狀態改變時,componentWillUpdate應該被調用。這就是問題出現的地方。 –