Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/425.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在不更改浏览器URL的情况下响应路由器更改路由/组件_Javascript_Reactjs_React Router - Fatal编程技术网

Javascript 在不更改浏览器URL的情况下响应路由器更改路由/组件

Javascript 在不更改浏览器URL的情况下响应路由器更改路由/组件,javascript,reactjs,react-router,Javascript,Reactjs,React Router,是否可以使用内部布线系统,以便渲染组件,但主浏览器布线不会更改 因此,如果您从mysite.com开始,它会呈现一个列表页面,您可以进入一个实例页面,但url仍然位于mysite.com,依此类推。如果您刷新页面,它将返回列表页面。为此,您可以使用内存路由器而不是路由器。有关示例和文档,请参阅 对于react路由器版本3,您可以从历史导入createMemoryHistory const memoryHistory = createMemoryHistory(location); <Rou

是否可以使用内部布线系统,以便渲染组件,但主浏览器布线不会更改


因此,如果您从
mysite.com
开始,它会呈现一个列表页面,您可以进入一个实例页面,但url仍然位于
mysite.com
,依此类推。如果您刷新页面,它将返回列表页面。

为此,您可以使用
内存路由器而不是
路由器。有关示例和文档,请参阅

对于react路由器版本3,您可以从
历史导入
createMemoryHistory

const memoryHistory = createMemoryHistory(location);
<Router history={memoryHistory} routes={routes} />
const memoryHistory=createMemoryHistory(位置);

版本3文档:

我认为您可以维护内部状态,并根据状态值只渲染所需的组件。和加载时一样,您将拥有原始状态值,在那里您可以渲染列表组件。当您进一步移动时,您只需更改状态值并基于它渲染组件。我仍然使用react router 3。这个版本有什么选择吗?@Kousha顺便问一下,我可以推荐迁移到v4吗?这是值得的