React bootstrap 导航栏崩溃不起作用
React bootstrap navbar collapse not working
我使用了 React bootstrap 导航栏也使用了 react-scroll
来实现流畅的导航。它工作正常,但在响应模式下单击任何导航项时导航栏不会折叠。
包
import React, { Component } from "react";
import { NavLink } from "react-router-dom";
import { Link } from "react-scroll";
import { LinkContainer } from "react-router-bootstrap";
import { Navbar, Container, NavDropdown, Nav, Dropdown } from "react-bootstrap";
导航栏
<Navbar
sticky="top"
id="navbar"
bg="light"
expand="lg"
className="navbar navbar-expand-lg navbar-light bg-light"
collapseOnSelect={true}
>
<Navbar.Toggle aria-controls="basic-navbar-nav" />
<Navbar.Collapse id="basic-navbar-nav">
<Nav className="ml-auto">
<Link
activeClass="active"
to="features"
spy={true}
smooth={true}
offset={-70}
duration={800}
className="nav-link"
onClick={this.closeNavbar}
>
Features
</Link>
<Link
activeClass="active"
to="about"
spy={true}
smooth={true}
offset={-70}
duration={800}
className="nav-link"
>
About
</Link>
</Nav>
</Navbar.Collapse>
</Navbar>
React 中的已知问题 Bootstrap 当我们单击菜单项时它不会自动隐藏菜单,下面提到的代码可以帮助您实现相同的目的。
不需要 jQuery:
的简单解决方法
<DropdownButton title={buttonTitle} onSelect={() => null}>
或者如果您仍在使用 ES5:
<DropdownButton title={buttonTitle} onSelect={function() {}}>
onSelect
回调 returns 似乎并不重要。
有同样的问题。我发现如果我们为 Nav.Link item
添加 "eventKey","collapseOnSelect" 会起作用
示例:
import { Link } from 'react-router-dom';
import { Nav, Navbar} from 'react-bootstrap';
<Navbar collapseOnSelect expand="lg">
<Navbar.Toggle />
<Navbar.Collapse>
<Nav className="mr-auto d-block">
<Nav.Item>
<Nav.Link eventKey="1" as={Link} to="/Home">
Home
</Nav.Link>
</Nav.Item>
<Nav.Item>
<Nav.Link eventKey="2" as={Link} to="/Contant">
Page Contant
</Nav.Link>
</Nav.Item>
</Nav>
</Navbar.Collapse>
</Navbar>
我遇到了同样的问题,并通过将 Bootstrap 的 Nav.Link 放回原处解决了它。根据您的代码,它是如何工作的:
<Navbar sticky="top" id="navbar"className="navbar" collapseOnSelect bg="light expand="lg">
<Navbar.Toggle aria-controls="basic-navbar-nav"/>
<Navbar.Collapse id="basic-navbar-nav">
<Nav className="ml-auto">
<Nav.Link>
<Link
activeClass="active"
to="features"
spy={true}
smooth={true}
offset={-70}
duration={800}
className="nav-link"
>
Features
</Link>
</Nav.Link>
</Nav>
</Navbar.Collapse>
</Navbar>
只需在 <Nav.link/>
中使用 eventKey="2"
即可。它适用于 react js .
我遇到了同样的问题,找到了解决方法。
必须向导航栏组件添加 expand 属性。
<Navbar variant="dark" expand="lg">
我使用了 React bootstrap 导航栏也使用了 react-scroll
来实现流畅的导航。它工作正常,但在响应模式下单击任何导航项时导航栏不会折叠。
包
import React, { Component } from "react";
import { NavLink } from "react-router-dom";
import { Link } from "react-scroll";
import { LinkContainer } from "react-router-bootstrap";
import { Navbar, Container, NavDropdown, Nav, Dropdown } from "react-bootstrap";
导航栏
<Navbar
sticky="top"
id="navbar"
bg="light"
expand="lg"
className="navbar navbar-expand-lg navbar-light bg-light"
collapseOnSelect={true}
>
<Navbar.Toggle aria-controls="basic-navbar-nav" />
<Navbar.Collapse id="basic-navbar-nav">
<Nav className="ml-auto">
<Link
activeClass="active"
to="features"
spy={true}
smooth={true}
offset={-70}
duration={800}
className="nav-link"
onClick={this.closeNavbar}
>
Features
</Link>
<Link
activeClass="active"
to="about"
spy={true}
smooth={true}
offset={-70}
duration={800}
className="nav-link"
>
About
</Link>
</Nav>
</Navbar.Collapse>
</Navbar>
React 中的已知问题 Bootstrap 当我们单击菜单项时它不会自动隐藏菜单,下面提到的代码可以帮助您实现相同的目的。
不需要 jQuery:
的简单解决方法<DropdownButton title={buttonTitle} onSelect={() => null}>
或者如果您仍在使用 ES5:
<DropdownButton title={buttonTitle} onSelect={function() {}}>
onSelect
回调 returns 似乎并不重要。
有同样的问题。我发现如果我们为 Nav.Link item
添加 "eventKey","collapseOnSelect" 会起作用示例:
import { Link } from 'react-router-dom';
import { Nav, Navbar} from 'react-bootstrap';
<Navbar collapseOnSelect expand="lg">
<Navbar.Toggle />
<Navbar.Collapse>
<Nav className="mr-auto d-block">
<Nav.Item>
<Nav.Link eventKey="1" as={Link} to="/Home">
Home
</Nav.Link>
</Nav.Item>
<Nav.Item>
<Nav.Link eventKey="2" as={Link} to="/Contant">
Page Contant
</Nav.Link>
</Nav.Item>
</Nav>
</Navbar.Collapse>
</Navbar>
我遇到了同样的问题,并通过将 Bootstrap 的 Nav.Link 放回原处解决了它。根据您的代码,它是如何工作的:
<Navbar sticky="top" id="navbar"className="navbar" collapseOnSelect bg="light expand="lg">
<Navbar.Toggle aria-controls="basic-navbar-nav"/>
<Navbar.Collapse id="basic-navbar-nav">
<Nav className="ml-auto">
<Nav.Link>
<Link
activeClass="active"
to="features"
spy={true}
smooth={true}
offset={-70}
duration={800}
className="nav-link"
>
Features
</Link>
</Nav.Link>
</Nav>
</Navbar.Collapse>
</Navbar>
只需在 <Nav.link/>
中使用 eventKey="2"
即可。它适用于 react js .
我遇到了同样的问题,找到了解决方法。
必须向导航栏组件添加 expand 属性。
<Navbar variant="dark" expand="lg">