Javascript 如何使用react路由器创建反向路由
我想知道是否有一种推荐的方法可以在基于Javascript 如何使用react路由器创建反向路由,javascript,react-router,Javascript,React Router,我想知道是否有一种推荐的方法可以在基于react-router的应用程序中为我的链接构建URL。在Zend Frameworkforphp的世界中,我会使用一个使用反向路由的url助手。我会将我的路由名称和参数输入到一个路由配置中,它会吐出我要链接到的URL(或者在react router的情况下推送到) 我发现:但它看起来只支持react-router的版本1。我使用的是第3版。出于同样的目的,我使用了“react router dom”包中的generatePath 例如,projects/
react-router
的应用程序中为我的链接构建URL。在Zend Framework
forphp
的世界中,我会使用一个使用反向路由的url助手。我会将我的路由名称和参数输入到一个路由配置中,它会吐出我要链接到的URL(或者在react router
的情况下推送到)
我发现:但它看起来只支持
react-router
的版本1。我使用的是第3版。出于同样的目的,我使用了“react router dom”包中的generatePath
例如,projects/routes.js
包含配置:
import {generatePath} from "react-router-dom";
export const EDIT = {
route: "/projects/:id",
generate(id) {
return generatePath(this.route, {id})
}
}
而
依赖于。路线
部分:
<Route path={ProjectRoutes.EDIT.route} component={ProjectEdit} />
这绝对不是名字上的颠倒。但我发现这种方法更具可预测性和灵活性,因为不会发生名称冲突。它存在于(非常非常)早期版本中,但后来被淘汰。任何通过搜索来这里并提出相同问题的人都可以从therad和所有后续讨论开始关注戏剧。
<Link to={ProjectRoutes.EDIT.generate(someVariable.id)}>Edit me!</Link>