问:如何通过React-Router的Link组件传递prop或单个值(如_id),并在端点捕获它?
这就是我的意思:假设我们在/ a页上。链接会将用户带到/ b。就这样<Link to='/b'>
。现在,我需要通过链接将_id从/ a传递到/ b。
<Link to='/b' params={_id}>blah blah</Link>
我要传递的id是其中嵌套了Link组件的对象的属性。
我params={}
在另一个StackOverflow线程中发现了这种语法。我的代码编译时没有中断,所以这可能意味着它起作用了吗?但是,我不确定如何在端点上检索此传递的值。
任何帮助将不胜感激。
传递道具
您可以通过state
对象将任意道具传递到路线:
<Link to={{ pathname: '/route', state: { foo: 'bar'} }}>My route</Link>
然后,您可以state
从组件内部访问对象:
const {foo} = props.location.state
console.log(foo) // "bar"
传递参数
配置您的路由路径以接受命名参数(:id
):
<Route path='/route/:id' exact component={MyComponent} />
然后,您可以在链接中传递URL参数(例如ID)to
:
<Link to={`route/foo`}>My route</Link>
您可以通过match
对象在组件内访问参数:
const {id} = props.match.params
console.log(id) // "foo"
资料来源
https://github.com/ReactTraining/react-router/blob/master/packages/react-router/docs/api/location.md
https://github.com/ReactTraining/react-router/issues/4036
问题内容: 没有参数 带参数 我想得到。我怎么才能得到它? 问题答案: 试试这个: 并在您的职能:
问题内容: 我只是在 文档中读到以下错误,它将影响渲染时间。如果是这种情况,我该如何重构代码并使用所需的道具来创建动态样式? 先感谢您。 标签组件 问题答案: 我相信文档在说的是您应该避免在渲染组件中包含样式: 做这个 代替这个 因为发生的是组件的Props更改,所以组件将重新渲染并且样式将重新生成。因此,有必要将其分开。 因此,如果您进一步阅读 基于道具 的 适应 部分,他们将对此进行解释: 之
请考虑以下示例: 我希望将值传递到中,作为哑输入组件的道具。然而,它从不重新呈现它。
问题内容: 如何使用将值传递给页面? 问题答案: 应该工作正常。 这里有两个选项,它们打开HTTP POST,并包含要提交的数组数组。可用于向 s 提交数据。 重要的是要注意,$ data采用两种格式,并且这决定了将如何编码邮政数据。 as :数据将以服务器并不总是接受的方式发送。 curl_setopt($handle, CURLOPT_POSTFIELDS, $data); 作为url编码的字
问题内容: 我真的是Swift的新手,我刚刚读到类是通过引用传递的,并且复制了数组/字符串等。 通过引用进行传递是否与在Objective-C或Java中通过“ a”引用进行传递的方式相同,还是通过引用进行正确传递? 问题答案: Swift中的事物类型 规则是: 类实例是 引用类型 (即, 您 对类实例的引用实际上是一个 指针 ) 函数是参考类型 其他一切都是 价值类型 ; “其他所有内容”仅表示
问题内容: Go中的地图是否通过值或引用传递? 始终可以将函数定义为以下形式,但这是一个过大的杀伤力吗? 相同的返回值问题。我应该返回指向地图的指针,还是将地图作为值返回? 这样做的目的当然是避免不必要的数据复制。 问题答案: 在此线程中,您将找到答案: Golang:使用地图参考来访问地图 您不需要在地图上使用指针。 映射类型是引用类型,例如指针或切片[1] 如果需要更改会话,可以使用一个指针: