Javascript 当我更改组件时,如何重新定义减速器的初始状态
更多详情: 我有一个叫做header的组件,里面有一个菜单,当我在移动设备中时,我有一个汉堡菜单 当我点击这个汉堡菜单时,我将状态设置为true,菜单打开;当我点击一个十字时,状态变为false,菜单关闭 现在的问题是: 如果我更改组件为“始终保存以前的状态”,如果菜单打开并单击“主页”,例如,该状态实际上为“真”,在我的主页中,该菜单打开,我不希望使用此组件 你有什么建议吗 查看代码: //行动: export const setBurgerMenu=createAction 设置汉堡菜单, => {} ; 导出常量getBurgerMenu==>{ 返回调度=>{ 调度菜单; }; }; //减速器: //初始状态包含isOpenMenu为false 常数减速机=手动过滤{ [设置汉堡菜单]:状态=>{ 返回{ 状态 isOpenMenu:!state.isOpenMenu }; }, [面包屑将更新]:状态=>{ 返回{ 状态 isWillUpdate:true }; }, [面包屑更新]:状态=>{ 返回{ 状态 isWillUpdate:false }; }, [清除用户数据]:=>{ 返回{ …初始状态 }; } },初始状态 您可以在组件上使用componentWillUnmount或componentWillMount方法 使用componentWillUnmount在第一个组件上:Javascript 当我更改组件时,如何重新定义减速器的初始状态,javascript,html,reactjs,redux,redux-actions,Javascript,Html,Reactjs,Redux,Redux Actions,更多详情: 我有一个叫做header的组件,里面有一个菜单,当我在移动设备中时,我有一个汉堡菜单 当我点击这个汉堡菜单时,我将状态设置为true,菜单打开;当我点击一个十字时,状态变为false,菜单关闭 现在的问题是: 如果我更改组件为“始终保存以前的状态”,如果菜单打开并单击“主页”,例如,该状态实际上为“真”,在我的主页中,该菜单打开,我不希望使用此组件 你有什么建议吗 查看代码: //行动: export const setBurgerMenu=createAction 设置汉堡菜单,
componentWillUnmount() {
if (this.props.isMenuOpen) this.props.setBurgerMenu()
}
componentWillMount() {
if (this.props.isMenuOpen) this.props.setBurgerMenu()
}
使用componentWillMount安装在第二个组件上:
componentWillUnmount() {
if (this.props.isMenuOpen) this.props.setBurgerMenu()
}
componentWillMount() {
if (this.props.isMenuOpen) this.props.setBurgerMenu()
}
为什么你的行为被放在方括号里?我们没有一种独特的方式来编写我们的减速机,在办公室,它是这样开发的,但我更喜欢开关/案例方法。我问这个问题是因为这可能是个问题;当它们放在方括号中时,它能正常工作吗?是的,当然,我所有的应用程序中的减速机都是这样写的:@Jonathan你能添加使用这个值的组件吗?谢谢你的回答,但我在发布20分钟后找到了解决方案。我真是个白痴,问题很简单。我必须做一个减速机,当我点击值为真时,另一个在值为假时,当我的组件被安装时,我调用假值,如果我点击真值,没有比这更简单的。。。