Reactjs 减速机
我不知道为什么我的Redux减速机不想工作。 例如,函数setSelectedItem起作用,但setCity不想这样做 控制台仅记录-ggg Bydgoszcz-或-ggg Toruń mapActions.jsReactjs 减速机,reactjs,redux,Reactjs,Redux,我不知道为什么我的Redux减速机不想工作。 例如,函数setSelectedItem起作用,但setCity不想这样做 控制台仅记录-ggg Bydgoszcz-或-ggg Toruń mapActions.js export const setSelectedItem = (item) => { return (dispatch, getState) => { if(!item) { dispatch({
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))
}
}
试试这个
<div className={styles.dropMenuCitesContent}>
<ol>
<li onClick={() => this.props.setCity("Toruń")}>Toruń</li>
<li onClick={() => this.props.setCity("Bydgoszcz")}>Bydgoszcz</li>
</ol>
</div>
const mapDispatchToProps = dispatch => {
return {
setCity: (value) => dispatch(setCity(value))
}
}