gpt4 book ai didi

reactjs - react 路由器的位置状态在路由改变时变得未定义

转载 作者:行者123 更新时间:2023-12-04 11:27:26 30 4
gpt4 key购买 nike

我要存储 url query作为现场状态。

~   history.push({
+ ...history.location,
+ search: query.toString(),
+ state: {
+ myState: query.toString(),
+ },
+ })

我怀疑在路线改变时获取状态,但是 state成为 undefined当我从其他路线回来时。

最佳答案

就是这样state (来自 History API)有效。状态附加到 session 中的位置,当您直接导航到页面时,状态不存在(或者更确切地说,是 null )。

一般来说,我不建议使用 location.state 传递临时数据(如重定向位置)以外的任何内容。如果您需要将数据附加到某个位置,我建议您使用路径参数或搜索参数,并拥有一个可以从中查找该数据的商店。

// path params
{ pathname: `/path/name/${SOME_ID}` }
// search params
{ search: `?someID=${SOME_ID}` }

如果你真的想使用 location.state,当 location.state 为空时,你的路线需要有某种备份计划来使用一些默认值。

关于reactjs - react 路由器的位置状态在路由改变时变得未定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56630853/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com