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

时间:2016-11-08 16:06:32

标签: reactjs react-bootstrap

我是初学者,所以,需要你的帮助。 我使用了可折叠的bootstrap导航栏,没有想法如何在链接点击移动后折叠它。本机bootsrap属性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;

1 个答案:

答案 0 :(得分:0)

const [expanded, setExpanded] = useState(false);

Navbar 的第二个我们添加这个道具:

<Navbar expanded={expanded}>

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

<Navbar.Toggle onClick={() => setExpanded(expanded ? false : "expanded")} />

第四步我们添加道具

<Link to="/" onClick={() => setExpanded(false)}>Menu</Link>