Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/26.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 反应路由器:什么';浏览器历史记录的目的是什么?浏览器历史记录是强制性的吗?_Javascript_Reactjs_React Router - Fatal编程技术网

Javascript 反应路由器:什么';浏览器历史记录的目的是什么?浏览器历史记录是强制性的吗?

Javascript 反应路由器:什么';浏览器历史记录的目的是什么?浏览器历史记录是强制性的吗?,javascript,reactjs,react-router,Javascript,Reactjs,React Router,浏览器历史记录是否仅用于在已访问的页面之间进行更改 但浏览器已经具备了这些能力。为什么需要另一个模块 此外: 我尝试过在没有浏览器历史记录的情况下使用React Router。我一直在工作。我可以通过在地址栏中输入相应的URL来获取所有单个组件 如果我在没有浏览器历史记录的情况下使用React Router会产生什么后果?如果您的服务器配置为SPA应用程序,如下所示: NODE server // serve static assets normally app.use(express.s

浏览器历史记录是否仅用于在已访问的页面之间进行更改

但浏览器已经具备了这些能力。为什么需要另一个模块

此外:

我尝试过在没有浏览器历史记录的情况下使用React Router。我一直在工作。我可以通过在地址栏中输入相应的URL来获取所有单个组件


如果我在没有浏览器历史记录的情况下使用React Router会产生什么后果?

如果您的服务器配置为SPA应用程序,如下所示:

NODE server
 // serve static assets normally
  app.use(express.static(__dirname + '/public'))

 // handle every other route with index.html, which will contain
 // a script tag to your application's JavaScript file(s).
  app.get('*', function (request, response){
   response.sendFile(path.resolve(__dirname, 'public', 'index.html'))
  })

没有
浏览器历史记录
,当您导航到
/
以外的其他URL(如
/posts/1
)并刷新页面时。服务器只提供主页。使用
browserHistory
,路由器将正确处理那些
URL
。有关更多信息,请阅读

是否可以不使用它在历史记录中来回移动?是的。我又试过一次:删除了“history={history}”属性。重新启动web服务器。单击指向不同页面的链接。之后,我可以使用Chrome的后退按钮,它会显示我最后访问的页面、最后一秒等。