Мы создали проект с редуксом. В этом проекте мы получаем информацию objecat от API и вставляем ее в магазин. Теперь мы заметили, что компоненты функции перерисовываются, даже если API возвращает то же состояние, что и в предыдущем запросе.
Мы думаем, что это потому, что мы перезаписываем магазин, но мы не уверены.
ChatContainer. js
const mapStateToProps = function (state) {
return {
content: state.info.content,
loading: state.info.loading,
}
}
const ChatContainer = connect(
mapStateToProps,
)(Chat)
export default ChatContainer
Чат. js
function Chat(props) {
const { content, loading } = props;
return (
<Info content={content} loading={loading} />
)
}
действие. js
export function setInfo(info) {
return {
type: SET_INFO, info: {
content: info,
loading: false
}
}
}
редуктор. js
function setInfo(state = { content: [], loading: true }, action) {
switch (action.type) {
case SET_INFO:
return action.info
default:
return state
}
}
const appReducer = combineReducers({
...
info: setInfo,
...
})
export default appReducer