我使用“ create react-app”创建了一个react应用。
我现在正在尝试从Reactstrap添加导航栏。我确实从Reactstrap复制粘贴(我将其添加为一个React组件)website:
import React from 'react';
import {
Collapse,
Navbar,
NavbarToggler,
NavbarBrand,
Nav,
NavItem,
NavLink,
UncontrolledDropdown,
DropdownToggle,
DropdownMenu,
DropdownItem } from 'reactstrap';
export default class Example extends React.Component {
constructor(props) {
super(props);
this.toggle = this.toggle.bind(this);
this.state = {
isOpen: false
};
}
toggle() {
this.setState({
isOpen: !this.state.isOpen
});
}
render() {
return (
<div>
<Navbar color="light" light expand="md">
<NavbarBrand href="/">reactstrap</NavbarBrand>
<NavbarToggler onClick={this.toggle} />
<Collapse isOpen={this.state.isOpen} navbar>
<Nav className="ml-auto" navbar>
<NavItem>
<NavLink href="/components/">Components</NavLink>
</NavItem>
<NavItem>
<NavLink href="https://github.com/reactstrap/reactstrap">GitHub</NavLink>
</NavItem>
<UncontrolledDropdown nav inNavbar>
<DropdownToggle nav caret>
Options
</DropdownToggle>
<DropdownMenu right>
<DropdownItem>
Option 1
</DropdownItem>
<DropdownItem>
Option 2
</DropdownItem>
<DropdownItem divider />
<DropdownItem>
Reset
</DropdownItem>
</DropdownMenu>
</UncontrolledDropdown>
</Nav>
</Collapse>
</Navbar>
</div>
);
}
}
,它不起作用。我在我的React应用中得到了这个
我之前在Bootstrap,React和Navbar上也遇到过类似的问题,但我真的很惊讶它在Reactstrap中正在发生。 你知道为什么会这样吗?
答案 0 :(得分:2)
您应该确保拥有
import 'bootstrap/dist/css/bootstrap.css';
导入到在创建react应用程序时自动创建的index.js
文件中。
答案 1 :(得分:1)
您可以这样做。
import { NavLink } from 'reactstrap';
import { NavLink as ReactLink } from 'react-router-dom';
<NavLink tag={ReactLink} to="/home" activeClassName="active" >Home</NavLink>
答案 2 :(得分:1)
您还需要进行引导,并进行react-dom:
npm install --save bootstrap
npm install --save reactstrap react react-dom
import 'bootstrap/dist/css/bootstrap.css';
import { Button } from 'reactstrap';
答案 3 :(得分:0)
虽然没有记录在案,但您必须在 react-router 中使用如下:
{
"message": "Internal server error"
}
浏览器:
<NavLink tag={Link} to="/somewhere">