单击链接后隐藏折叠导航栏,react-redux,react-bootstrap

And*_*rew 5 reactjs react-bootstrap

我是反应的初学者,所以,需要你的帮助。我使用了可折叠的引导导航栏,不知道如何在移动设备上单击链接后使其折叠。本机引导程序属性 collapseOnSelect 不起作用,或者我做错了什么。

const  AppBar = () => (
  <Navbar collapseOnSelect>
    <Navbar.Header>
      <Navbar.Brand>
        <div className="logo-wrap"> 
          <Link to="define"> 
            <img height='50' src='./../assets/img/logo.png' className="logo"/> 
          </Link> 
        </div> 
      </Navbar.Brand>
      <Navbar.Toggle />
    </Navbar.Header>
    <Navbar.Collapse>
      <Nav>
        <LinkContainer to="define" className="nav-link"><NavItem eventKey={1}>Home</NavItem></LinkContainer>
        <LinkContainer to="about" className="nav-link"><NavItem eventKey={1}>About</NavItem></LinkContainer>
        <LinkContainer to="features" className="nav-link"><NavItem eventKey={1}>Features</NavItem></LinkContainer>
        <LinkContainer to="pricing" className="nav-link"><NavItem eventKey={1}>Pricing</NavItem></LinkContainer>
        <LinkContainer to="areaMap" className="nav-link"><NavItem eventKey={1}>Area Map</NavItem></LinkContainer>
      </Nav>
      <Nav pullRight>        
        <LinkContainer to="login" className="nav-link"><NavItem eventKey={2}>Log In</NavItem></LinkContainer>
        <LinkContainer to="registration"><NavItem eventKey={2}><Button className="sign-up">Sign Up</Button></NavItem></LinkContainer>
      </Nav>
    </Navbar.Collapse>
  </Navbar>
);


export default AppBar;
Run Code Online (Sandbox Code Playgroud)

小智 5

const [expanded, setExpanded] = useState(false);
Run Code Online (Sandbox Code Playgroud)

第二个在导航栏中我们添加这个道具:

<Navbar expanded={expanded}>
Run Code Online (Sandbox Code Playgroud)

第三,我们将 onClick 事件添加到切换处理程序中,以更改菜单可见性状态:

<Navbar.Toggle onClick={() => setExpanded(expanded ? false : "expanded")} />
Run Code Online (Sandbox Code Playgroud)

第四,我们添加道具

<Link to="/" onClick={() => setExpanded(false)}>Menu</Link>
Run Code Online (Sandbox Code Playgroud)