How do you pass data when using the navigate function in react router v6(在使用Reaction路由器V6中的导航功能时,如何传递数据)
问题描述
在v4中,您将执行历史推送(‘/What’,{data}) 然后,绑定到该路由的组件可以通过引用history.Location.State来读取数据对象
现在V6已更改为导航(‘随便’)
如何像以前一样传递数据?
推荐答案
它类似于v4中的操作,有两个参数,第二个参数是具有state
属性的对象。
navigate(
'thepath',
{
state: {
//...values
}
}
})
来自迁移指南:Use navigate instead of history
如果需要替换当前位置而不是推送新位置 在历史记录堆栈上,使用navigate(to, { replace: true })
。如果你 需要状态,请使用navigate(to, { state })
。你可以想到第一个 Arg作为您的Arg导航,另一个Arg作为replace
和state
道具。
要访问使用组件中的路由状态,请使用useLocation
反应挂钩:
const { state } = useLocation();
这篇关于在使用Reaction路由器V6中的导航功能时,如何传递数据的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!