/ redurs / index.js
import * as types from '../actions/ActionTypes';
var initialState = {
categoryName: 'default name redux'
};
function re_modifyCategoryName(state=initialState, action) {
switch(action.type) {
case types.MODIFY_CATEGORY_NAME :
return Object.assign({}, state, {
categoryName: action.categoryNewName
});
default:
return state;
}
}
export {re_modifyCategoryName}
Я определенно проверяю state
из redux store
обновляется с помощью Redux-dev-tool и redux-logger,
, но mapStateToProps
не вызывается.
PresentationalComponent.js
...
const mapStateToProps = (state) => {
console.log("inside category name", state.categoryName);
return {categoryName: state.categoryName}
};
export default connect(mapStateToProps)(AnswerEachCategory);
...
Когда страница отображается в первый раз, как вы можете видеть mapStateToProps
, "inside category name", state.categoryName
отображается в console
и presentational component
правильно получитьprops.categoryName
из initialState
из redux store
.Однако, почему изменение redux store
не вызвало mapStateToProps
??
Связана ли эта проблема с неизменностью state
хранилища резервов?
Container.js
...
const mapDispatchToProps = (dispatch) => ({
onModifyCategoryName: (categoryNewName) => {
dispatch(actions.modifyCategoryName(categoryNewName))
}
})
export default connect(null, mapDispatchToProps)(ModifyCategoryNameModal)
...