Reactjs 对路线和路线有问题;路由器dom中的链路
我正在从事一个React项目,在该项目中,我使用来自React路由器dom的交换机、链路和路由来路由到路径。但是现在我面临一个问题,在控制台中我得到了错误上下文Reactjs 对路线和路线有问题;路由器dom中的链路,reactjs,react-router-dom,Reactjs,React Router Dom,我正在从事一个React项目,在该项目中,我使用来自React路由器dom的交换机、链路和路由来路由到路径。但是现在我面临一个问题,在控制台中我得到了错误上下文路由器在链接中被标记为需要,但是它的值是未定义的,并且无法读取指向Link.js第76行的未定义的的属性历史记录。当我检查Link.js时,有一行使用this.context.router.history,看起来this.context.router没有定义。直到昨天才知道真正的问题是什么。我使用的react路由器dom版本是4.1.1
路由器在链接中被标记为需要,但是它的值是未定义的
,并且无法读取指向Link.js第76行的未定义的的属性历史记录。当我检查Link.js时,有一行使用this.context.router.history,看起来this.context.router没有定义。直到昨天才知道真正的问题是什么。我使用的react路由器dom版本是4.1.1 只需参考此文件并匹配您的路由文件即可
您能提供一些代码示例吗? 似乎您正在将其置于BrowserRouter(或HashRouter)的范围之外。 必须始终在的范围内 您可以执行以下操作:
<BrowserRouter>
<Link ... />
<Layout>
<Switch>
<Route ... />
<Route ... />
<Route component={NotFound} />
</Switch>
</Layout>
</BrowserRouter>`
`
但是你不能这样做:
<Link ... />
<BrowserRouter>
<Layout>
<Switch>
<Route ... />
<Route ... />
<Route component={NotFound} />
</Switch>
</Layout>
</BrowserRouter>`
`
用户Kishan Jaiswal为您指出了正确的方向顺便说一句,他链接到的问题不是一个bug,只是react router dom router之外的链接组件放错了位置