Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Reactjs 对路线和路线有问题;路由器dom中的链路_Reactjs_React Router Dom - Fatal编程技术网

Reactjs 对路线和路线有问题;路由器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

我正在从事一个React项目,在该项目中,我使用来自React路由器dom的交换机、链路和路由来路由到路径。但是现在我面临一个问题,在控制台中我得到了错误上下文
路由器
链接
中被标记为需要,但是它的值是
未定义的
,并且无法读取指向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之外的链接组件放错了位置