Я не понимаю, почему мой редюсер в Redux не хочет работать. Например, функция setSelectedItem работает, но setCity этого не хочет.
консоль ведет только журнал - ggg Bydgoszcz - или - ggg Toruń.
mapActions. js
export const setSelectedItem = (item) => {
return (dispatch, getState) => {
if(!item) {
dispatch({
type: actions.SET_SELECTED_ITEM_FAILED
})
} else {
dispatch({
type: actions.SET_SELECTED_ITEM_SUCCESS,
item
})
}
}
}
export const setCity = (new_city) => {
console.log("ggg", new_city)
return (dispatch, getState) => {
dispatch({
type: actions.SET_CITY,
city: new_city
})
}
}
mapReducer. js
case actions.SET_CITY:
console.log('SET_CITY', state)
return({
...state,
city: action.city
})
case actions.SET_SELECTED_ITEM_SUCCESS:
console.log('SET_SELECTED_ITEM_SUCCESS', state)
return({
...state,
selectedObject: action.item
})
case actions.SET_SELECTED_ITEM_FAILED:
console.log('SET_SELECTED_ITEM_FAILED', state)
return({
...state
})
Где я это называю:
<div className={styles.dropMenuCitesContent}>
<ol>
<li onClick={() => setCity("Toruń")}>Toruń</li>
<li onClick={() => setCity("Bydgoszcz")}>Bydgoszcz</li>
</ol>
</div>
[...]
const mapDispatchToProps = dispatch => {
return {
setCity: value => dispatch(setCity(value))
}
}