javascript - React路由器更改url但不呈现视图
问题描述
我知道这里有很多类似的问题,但没有一个能解决我的问题。
这是我的 App.js 类:
class App extends React.Component {
constructor(props) {
super(props);
}
render() {
return (
<div className="App">
<Router>
<Switch>
<Route exact path="/" component={Header}/>
<Route path="/login" component={Login}/>
<Route path="/register" component={Register}/>
<Route path="/ranking" component={Ranking}/>
<Route path="/forum" component={Forum}/>
</Switch>
</Router>
</div>
);
}
}
这是 Header 组件,其中我有带链接的菜单:
class Header extends React.Component
{
constructor(props) {
super(props);
}
render() {
return (
<div className="header">
<div className="menu">
<Router>
<div className="option"><Link to="/login">Login</Link></div>
<div className="option"><Link to="/register">Register</Link></div>
<div className="option"><Link to="/ranking">Ranking</Link></div>
<div className="option"><Link to="/forum">Forum</Link></div>
</Router>
</div>
</div>
)
}
}
我的问题是:当我单击标题部分中的链接时,浏览器中的 URL 会更改,但不会呈现组件(仅在刷新页面或手动编写 URL 后查看更改)。简而言之-链接不起作用。我做错了什么,我该如何解决?
解决方案
Router
从Header
组件中移除。
推荐阅读
- python - 合并、汇总和重命名数据框中的行
- python - 在解析之前使用 lxml 注册命名空间
- sql - 获取具有更新值的新列,其中每一行随时间变化取决于实际列?
- javascript - React 新手:如何编辑通过 npm 安装的组件?
- javascript - 为什么不添加第一个元素 createWriteStream
- javascript - 错误:7 PERMISSION_DENIED:您的应用程序已使用来自 Google Cloud SDK 的最终用户凭据进行身份验证
- torch - 如何在pytorch中实现帐篷激活功能?
- javascript - 计算数组中的平均值并在页面加载时显示它们,Vue
- python - 在 Python 中自动向子进程发送响应
- wpf - DevExpress WPF 控件库是否与 .NetCore 中的 AvaloniaUI 一起使用?