发布于2023-09-25 20:28 阅读(219) 评论(0) 点赞(7) 收藏(4)
更多细节 :
header
我有一个名为inside 的组件,我有一个菜单,当我在移动设备中时,我有一个汉堡菜单。
当我单击这个汉堡菜单时,我设置了一个状态true
,菜单变为打开,当我单击十字时,状态变为false
并且菜单关闭。
现在的问题是:
如果我更改组件始终保存以前的状态,例如,如果菜单打开并单击home
,则它实际上处于的状态,true
在我的家中,菜单打开,我不想要这种行为。
你有什么建议吗?
看代码:
// ACTION :
export const setBurgerMenu = createAction(
SET_BURGER_MENU,
() => ({})
);
export const getBurgerMenu = () => {
return dispatch => {
dispatch(setBurgerMenu());
};
};
// REDUCER :
// Initial state contain isOpenMenu at false
const reducer = handleActions({
[SET_BURGER_MENU]: (state) => {
return {
...state,
isOpenMenu: !state.isOpenMenu
};
},
[BREADCRUMBS_WILL_UPDATE]: (state) => {
return {
...state,
isWillUpdate: true
};
},
[BREADCRUMBS_UPDATED]: (state) => {
return {
...state,
isWillUpdate: false
};
},
[CLEAR_USER_DATA]: () => {
return {
...initialState
};
}
}, initialState);
您可以在组件上使用 thecomponentWillUnmount
或 the方法componentWillMount
在第一个组件上使用componentWillUnmount
:
componentWillUnmount() {
if (this.props.isMenuOpen) this.props.setBurgerMenu()
}
在第二个组件上使用componentWillMount
:
componentWillMount() {
if (this.props.isMenuOpen) this.props.setBurgerMenu()
}
作者:黑洞官方问答小能手
链接:http://www.qianduanheidong.com/blog/article/531595/581348fbd47a2f4024fc/
来源:前端黑洞网
任何形式的转载都请注明出处,如有侵权 一经发现 必将追究其法律责任
昵称:
评论内容:(最多支持255个字符)
---无人问津也好,技不如人也罢,你都要试着安静下来,去做自己该做的事,而不是让内心的烦躁、焦虑,坏掉你本来就不多的热情和定力
Copyright © 2018-2021 前端黑洞网 All Rights Reserved 版权所有,并保留所有权利。 京ICP备18063182号-3
投诉与举报,广告合作请联系vgs_info@163.com或QQ3083709327
免责声明:网站文章均由用户上传,仅供读者学习交流使用,禁止用做商业用途。若文章涉及色情,反动,侵权等违法信息,请向我们举报,一经核实我们会立即删除!