小编典典

在不更改URL的情况下反应路由器

reactjs

我需要在 不更改URL的情况下 进行路由。

在自己实现此功能之前,我尝试过通过React Router寻找一些东西。我看到有这样一个东西 createMemoryHistory

createMemoryHistory([options])

createMemoryHistory创建一个不与浏览器URL交互的内存历史对象。当您需要自定义用于服务器端呈现,自动测试的历史记录对象或不想操纵浏览器URL(例如,将应用程序嵌入到iframe中)时,这很有用。

但是在本段之后,没有任何用法示例,并且我在任何地方都找不到用法,例如:如何使用Link组件在没有路径名的情况下进行导航,如果不是路径名,则通过该参数进行路由,等等。

这是否满足我的需求,还是我必须自己实现路由器?


阅读 307

收藏
2020-07-22

共1个答案

小编典典

MemoryHistory是一个“历史记录提供者”,您可以像这样将其提供给React Router:

const memoryHistory = createMemoryHistory(options);

// In your Router configuration
<Router history={memoryHistory} routes={routes} />

除了初始配置之外,其他所有功能都应与常规浏览器历史记录完全相同。

本文介绍了如何在React Router中使用不同的提供程序:历史

2020-07-22