我刚开始使用react-router。
我有两个问题。using<Link to="/page">
和 和有<a href="page">
什么不一样?两者都发出完全相同的 get 请求,/page
但我在使用时遇到错误,<a href="page">
但<Link to="/page">
在我嵌套路由时使用它时它可以工作。我不明白,当我知道两者都渲染到完全相同的 url 时,怎么会有任何区别?
其次是 react router v4 文档中的奇怪箭头函数
const About = () => (
<div>
<h2>About</h2>
</div>
)
我知道() => {}
这些是 ES6 中的新内容,但我在普通括号而不是括号中找不到任何内容。这些是什么?
编辑
我的 index.js 类(我有所有的导入)
render((
<Router>
<div>
<Route component={App}/>
</div>
</Router>
), document.getElementById('root')
);
我的 App.js 类
class App extends Component {
render() {
return (
<div className="container">
<header>
<span className="icn-logo"><i className="material-icons">code</i></span>
<ul className="main-nav">
<li><Link to="/">Home</Link></li>
<li><Link to="/about">About</Link></li>
<li><Link to="/teachers">Teachers</Link></li>
<li><Link to="/courses">Courses</Link></li>
</ul>
</header>
<Route exact path="/" component={Home}/>
<Route path="/about" component={About}/>
<Route path="/teachers" component={Teachers}/>
<Route path="/courses" component={Course}/>
</div>
);
}
}
export default App;
我得到的错误。
Cannot GET /about
当我尝试移至localhost:8080/about
. 但是,当我单击about
按钮时,它会转到完全相同的网址/about
并完美呈现