我正在尝试使用 react-router v4,由于某种原因,当我使用普通链接和 Link 组件更改路由时,该路由不会触发,但如果我直接在 URL 栏中访问或只是刷新页面,该路由中的组件渲染组件。检查后,我看到上下文已更新,但道具未更新。如下图所示:
从“/about”路由开始,单击“/projects”链接(AboutMe 组件仍然在 Switch 内,而不是 Projects 组件的更改)。路由定义如下:
<Switch>
<Route exact path='/' component={Home}/>
<Route path='/about' component={AboutMe}/>
<Route path='/projects' component={Projects}/>
<Route path='/contact' component={Contact}/>
<Route component={NotFound} />
</Switch>
我已经尝试过使用 BrowserRouter、HashRouter 和仅使用 Router 组件,并且在 Switch 组件中包含/不包含路由(似乎没有任何效果)。我已经在教程、文档、其他 stackoverflow 问题和 repo 问题中搜索了两天,但到目前为止一无所获,所以我来了!:)
我正在使用这些软件包:
- 反应 v15.5.4
- 反应路由器-dom v4.1.1
提前致谢!\o