【发布时间】:2020-03-23 21:29:49
【问题描述】:
我想在不同的组件中使用 Link 和 Route 以将 Header 组件用作导航栏,但这不起作用。这是我的代码,但链接无法在 Reactjs 中的组件之间进行更改。
App.js
import React, {Component } from 'react';
import {BrowserRouter as Router} from 'react-router-dom';
import Header from './Header';
import Body from './Body';
class App extends Component {
render() {
return (
<Router>
<Header></Header>
<Body></Body>
</Router>
);
}
}
export default App;
Header.js
import React, { Component } from 'react';
import {BrowserRouter as Link} from 'react-router-dom';
class Header extends Component {
render(){
return (
<ul>
<li>
<Link to="/home">Home</Link>
</li>
<li>
<Link to="/doc">Doc</Link>
</li>
</ul>
)
}
}
export default Header;
Body.js
import React, { Component } from 'react';
import {BrowserRouter as Route, Switch} from 'react-router-dom';
import Home from './Home';
import Doc from './Doc';
class Body extends Component {
render(){
return (
<Switch>
<Route path="/home" component={Home} ></Route>
<Route path="/doc" component={Doc} ></Route>
</Switch>
);
}
}
export default Body;
Home.js
import React, { Component } from 'react';
class Home extends Component {
render(){
return (
<h1>Home</h1>
)
}
}
export default Home;
Doc.js
import React, { Component } from 'react';
class Doc extends Component {
render(){
return (
<h1>Doc</h1>
)
}
}
export default Doc;
注意:我查看了这个链接,但这还不够我的回答。 How to work with Route and Link in two Components in ReactJS
【问题讨论】:
标签: javascript reactjs react-router components router