当前位置: 首页 > 面试题库 >

如何以编程方式更新React-Router中的查询参数?

艾俊晖
2023-03-14
问题内容

我似乎找不到不使用来使用react-
router更新查询参数的方法<Link/>hashHistory.push(url)似乎没有注册查询参数,而且似乎也不能将查询对象或任何内容作为第二个参数传递。

如何从更改URL
/shop/Clothes/dresses,以/shop/Clothes/dresses?color=blue在反应路由器没有使用<Link>

而且是一个onChange真正的函数来监听查询变化的唯一途径?为什么没有自动检测到查询更改并对参数更改做出反应?


问题答案:

pushhashHistory,您可以指定查询参数。例如,

history.push({
  pathname: '/dresses',
  search: '?color=blue'
})

要么

history.push('/dresses?color=blue')

您可以查看此存储库以获取有关使用的其他示例history



 类似资料:
  • 我似乎找不到如何更新查询参数与反应路由器不使用

  • 问题内容: 完成一些验证后,如何移动到新页面?我有这样的事情: 我想将用户发送到另一条路线。我看过Redirect,但似乎它将从历史记录中删除我不想要的当前页面。 问题答案: 您正在使用react-router v4,因此您需要在组件中使用withRouter来访问历史对象的属性,然后使用它来动态更改路由。 withRouter : 您可以通过withRouter高阶组件访问历史对象的属性和最接近

  • 我迫不及待地开始使用最新的alpha版本的v4。全新的

  • 我在我的项目中使用react-router-dom 4.0.0-beta.6。我有一个代码如下: 我想在组件中获取查询参数。我找到了参数,如下所示:,因此未解析。 什么是正确的方法来获得查询参数与反应路由器v4?

  • 问题内容: 通过使用我可以使用元素创建由React Router本机处理的链接。 我在内部看到它的呼唤。 我想导航。不是来自链接,而是来自下拉菜单(例如)。如何在代码中执行此操作?什么啊 我看到了mixin,但是如果没有,我可以这样做吗? 问题答案: 带有钩子的React Router v5.1.0 如果您使用React> 16.8.0和功能组件,则React Router> 5.1.0中会有一个