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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/url/2.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
Javascript 反应路由器链接未在上下文中接收路由器_Javascript_Reactjs_React Router - Fatal编程技术网

Javascript 反应路由器链接未在上下文中接收路由器

Javascript 反应路由器链接未在上下文中接收路由器,javascript,reactjs,react-router,Javascript,Reactjs,React Router,我正在使用React和React路由器创建一个单页javascript应用程序。每个页面都是它自己的组件。在一个页面上,我能够成功地创建一个链接组件,并按预期工作。在另一页上,我发现以下错误: Warning: Failed Context Types: Required context `router` was not specified in `Link`. Uncaught TypeError: Cannot read property 'makeHref' of undefined 以

我正在使用React和React路由器创建一个单页javascript应用程序。每个页面都是它自己的组件。在一个页面上,我能够成功地创建一个链接组件,并按预期工作。在另一页上,我发现以下错误:

Warning: Failed Context Types: Required context `router` was not specified in `Link`.
Uncaught TypeError: Cannot read property 'makeHref' of undefined
以下是我设置路线的文件:

以下是链接工作的组件(在TeamRow组件中):

下面是链接不起作用的组件(第31行):


我在整个应用程序中记录了上下文以检查它们,只有在应用程序组件中它才不是空对象。我的链接不起作用的TeamPage组件有什么问题?为什么主页组件中的上下文是空的,但链接可以工作?

尝试将您的要求更改为

// remove the react-router require
var {Link} = require('react-router');


我注意到您正在传递
团队
,但使用的是
this.props.teamName
。您能否在TeamPage组件中成功创建链接?react router的哪个版本?您应该在使用它的每个组件中指定contextType:router。代码在我看来很好。除非明确使用
this.context.router
,否则不需要指定
contextTypes
;上下文仍将传递给声明上下文类型的子级(例如
链接
)。你有没有一个小例子重现了我们可以运行/实验的问题?@pherris是的,在链接工作的第二个文件的第72行properly@Colin我使用的是版本0.13.3,我尝试在所有组件中指定contextType,但没有效果
// keep the react-router require    
var Link = ReactRouter.Link;