Javascript 在本地磁盘保存站点中启用反应路由

Javascript 在本地磁盘保存站点中启用反应路由,javascript,reactjs,react-router,Javascript,Reactjs,React Router,我用浏览器进入我的网站,然后用CTRL+S键保存,在谷歌浏览器上选择网页完成选项 然后,当我在浏览器中打开保存的html文件时,我的站点总是将我重定向到未找到的页面 似乎react路由器无法处理来自本地磁盘的路由 My routes.js: import*as React from'React'; 从“反应路由器”导入{Route}; 从“./containers/Layout”导入布局; 从“./containers/Home”导入Home; 从“./容器/注册”导入注册; 从“./集装箱/取

我用浏览器进入我的网站,然后用CTRL+S键保存,在谷歌浏览器上选择网页完成选项

然后,当我在浏览器中打开保存的html文件时,我的站点总是将我重定向到未找到的页面

似乎react路由器无法处理来自本地磁盘的路由

My routes.js:

import*as React from'React';
从“反应路由器”导入{Route};
从“./containers/Layout”导入布局;
从“./containers/Home”导入Home;
从“./容器/注册”导入注册;
从“./集装箱/取消”进口取消;
从“./errorPages/NotFound”导入NotFound;
导出默认值
;
//启用热模块更换(HMR)
如果(模块热){
module.hot.accept();
}


在这种情况下,我如何正确地处理,更改路由配置,可能是保存站点的其他变体,我应该如何保存我的站点,然后在没有任何问题的情况下导航

您需要运行并配置服务器,将所有请求重新路由到index.html,此时React Router负责所有路由。请看这里:

该示例使用Express(Node.js)服务器,相关块如下所示:

app.get('*',函数(请求,响应){
response.sendFile(path.resolve(_dirname,'public','index.html'))
})


虽然如果您在本地开发中使用其他服务器,您也可以配置您选择的其他服务器。

我没有意识到,这不是我的意图。我编辑时没有看到任何标记。抱歉。这是关键点,要启动没有服务器的站点,只需在浏览器中打开
mysite.html
,它就可以工作了。没有反应路由器,它工作得很好。你能澄清你的观点吗?您需要在此处运行服务器,才能使react路由器按预期工作。我可以避免运行服务器吗?这是最重要的一点,在没有服务器的情况下工作您的限制是什么?您的生产环境将运行一个服务器,可能我需要它给人,谁只需要看这个网站,而不安装一堆thresh为他。对于只需要客户端的人来说,也是如此。