如何在nextjs的Router.push()中将对象作为参数传递,并在其他组件中访问该对象

时间:2020-07-20 12:34:42

标签: javascript reactjs push next.js router

Router.push({pathname: '/card', query:{data: ObjectData}})

我得到查询,因为空值无法将对象传递给它

2 个答案:

答案 0 :(得分:3)

您可以通过这种情况传递参数:

router.push({
      pathname: '/card',
      query: { data: JSON.stringify(ObjectData)}
  })

您可以在卡片组件中获得如下参数:

JSON.parse(props.router.query.data);

答案 1 :(得分:0)

Ciao,在next.js中,您可以传递如下查询参数:

Router.push({
  pathname: '/card',
  query: { name: 'Someone' }
})

您可以通过以下方式检索它:

this.props.router.query.name

假设您的ObjectData是JSON对象,则可以像这样传递它:

Router.push({pathname: '/card', query: ObjectData})

你怎么看?