Omr*_*ron 14 javascript reactjs react-router
我需要在不更改URL的情况下使用路由.
在我自己实现之前,我试图通过反应路由器寻找一些东西.我看到有这样的事情叫做createMemoryHistory:
createMemoryHistory([选项])
createMemoryHistory创建一个不与浏览器URL交互的内存中历史记录对象.当您需要自定义用于服务器端呈现的历史对象,自动化测试,或者当您不想操作浏览器URL时(例如,当您的应用程序嵌入在iframe中时)时,这非常有用.
但是除了这一段之外没有任何用法示例,我无法在任何地方找到它的用法,即:如何使用Link组件在没有路径名的情况下导航,如果不是路径名,我将路由哪个参数等.
这是否适合我的需要,还是我必须自己实施路由器?
mdz*_*kon 13
MemoryHistory是一个"历史提供者",你可以像这样提供给React Router:
const memoryHistory = createMemoryHistory(options);
// In your Router configuration
<Router history={memoryHistory} routes={routes} />
Run Code Online (Sandbox Code Playgroud)
除了初始配置之外,其他所有内容都应与常规浏览器历史记录完全相同.
本文介绍如何使用React Router:Histories使用不同的提供程序
React Router 4有一个MemoryRouter
import { MemoryRouter } from 'react-router'
<MemoryRouter>
<App/>
</MemoryRouter>
Run Code Online (Sandbox Code Playgroud)
一个
<Router>在内存让你的“URL”的历史记录(不读或写到地址栏)。在测试和非浏览器环境(如React Native)中很有用。
https://reacttraining.com/react-router/web/api/MemoryRouter