Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/25.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 如何将Next.js路由映射到props.url?_Reactjs_Next.js - Fatal编程技术网

Reactjs 如何将Next.js路由映射到props.url?

Reactjs 如何将Next.js路由映射到props.url?,reactjs,next.js,Reactjs,Next.js,如中所示,我正在尝试访问this.props.url,但它没有定义,我不确定该组件应该如何获取下一个路由道具。我希望有一个connect或with router等,但我从未见过props.url,也找不到README.md中提到的import 我应该如何获得这个.props.url 我觉得这是下一条路线的文档中的一个输入错误。该软件包已经有好几个月没有维护了,并且还没有为下一个v7或更高版本进行更新。上次支持的是^6.0.0 无论如何,在NextJS中,应该通过使用从next/router导出

如中所示,我正在尝试访问
this.props.url
,但它没有定义,我不确定该组件应该如何获取
下一个路由
道具。我希望有一个
connect
with router
等,但我从未见过
props.url
,也找不到
README.md
中提到的
import

我应该如何获得
这个.props.url



我觉得这是
下一条路线的文档中的一个输入错误。该软件包已经有好几个月没有维护了,并且还没有为下一个v7或更高版本进行更新。上次支持的是^6.0.0


无论如何,在NextJS中,应该通过使用从
next/router
导出的
withRouter
HOC来附加它。附加该属性后,您的查询将存在于
this.props.router.query

您必须在getInitialProps中返回url对象,然后才能在呈现函数中访问查询

导出默认类Blog扩展React.Component{
静态异步getInitialProps({query}){
返回{url:{query}
}
渲染(){
//this.props.url.query.slug
}
}

最大的痛苦是
routes.js
config专门有一个
name
属性,我无法从组件中访问该属性,这意味着我必须手动检查组件的文件系统
/path
props.router.query
参数。我可以确认使用
下一个路由
with router
,允许接收
路由器
prop,然后,我们的高阶包装器组件(如
nextreduxwrapper
)可能会覆盖并删除它。目前,
getInitialProps
正在使用
({Component,ctx,router})调用