Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Reactjs 在react js中隐藏/删除组件_Reactjs_React Redux - Fatal编程技术网

Reactjs 在react js中隐藏/删除组件

Reactjs 在react js中隐藏/删除组件,reactjs,react-redux,Reactjs,React Redux,我是新手,所以我需要知道如何隐藏或删除组件。 我有一个主页,我有像Logobutton和Menu button这样的按钮。我点击菜单按钮,它会加载一个菜单组件。我是按州做的。当我点击菜单按钮时,我将状态设置为true。它转到菜单组件。但当我点击Logo按钮时,它仍然会在Home组件上方显示菜单组件。徽标按钮来自标题组件。所以我只想在单击菜单按钮时显示菜单组件,在移动到其他页面或单击任何其他按钮时隐藏或删除组件。如何实现它?您可以基于道具有条件地渲染组件: <Component logged

我是新手,所以我需要知道如何隐藏或删除组件。
我有一个主页,我有像Logobutton和Menu button这样的按钮。我点击菜单按钮,它会加载一个菜单组件。我是按州做的。当我点击菜单按钮时,我
将状态设置为true。它转到菜单组件。但当我点击Logo按钮时,它仍然会在Home组件上方显示菜单组件。徽标按钮来自标题组件。所以我只想在单击菜单按钮时显示菜单组件,在移动到其他页面或单击任何其他按钮时隐藏或删除组件。如何实现它?

您可以基于道具有条件地渲染组件:

<Component logged={value} />

//value will be the state value

if (logged) //state as prop {
    return <UserGreeting />;
  }
  return <GuestGreeting />;

这回答了你的问题吗?如何将状态传递给另一个组件?由于两个组件都是两个不同的组件,请检查以下内容:。在react you lift state中,我在render{this.state.showComponent?:null}中是这样做的,但当我单击另一个按钮时,它仍然会显示出来。我可以判断这是否有效,因为这不是完整的代码,但通常是这样
<Component logged={value} style={{display: logged ? 'block' : 'none'}}/>