react项目,点击浏览器的返回前进,路由切换了,但是导航栏没有切换,这个怎么处理?

发布于 2022-09-07 21:53:20 字数 1657 浏览 17 评论 0

做一个网站,header和footer固定,中间内容通过路由匹配,
代码如下:
class App extends React.Component {

render() {

return (
  <div>
    <BackTop />
    <Layout className="layout">
      <Header className="header">
        <Headerc></Headerc>
      </Header>
      <Content className="content">
        <Switch>
          <Route
                 exact
                 path="/"
                 component={ Home } />
          <Route
                 path="/lab"
                 component={ Laboratory } />
          <Route
                 path="/hardware"
                 component={ Hardware } />
          <Route
                 path="/agricultural"
                 component={ Agricultural } />
          <Route
                 path="/service"
                 component={ Service } />
          <Route
                 exact
                 path="/diseases"
                 component={ Diseases } />
          <Route
                 path="/diseases/diseasesDetail/:id?"
                 component={ DiseasesDetail } />
          <Route
                 path="/aboutus"
                 component={ AboutUS } />
          <Route component={ Error } />
        </Switch>
      </Content>
      <Footer className="footer">
        <Footerc></Footerc>
      </Footer>
    </Layout>
  </div>
);

}
}

export default App;

现在的问题是,我切换导航菜单,路由可以正常切换,但是点击浏览器的返回键,路由切换了,导航栏菜单高亮没有改变,请问这个如何解决?
图片描述

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

执手闯天涯 2022-09-14 21:53:20

react-router 里面有个 withRouter函数了解下

输什么也不输骨气 2022-09-14 21:53:20

说明你导航栏实现的有问题
https://reacttraining.com/rea...

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文