Reactjs 在react路由器中刷新时为空白页

Reactjs 在react路由器中刷新时为空白页,reactjs,react-router,react-redux,router,react-router-redux,Reactjs,React Router,React Redux,Router,React Router Redux,当我从/home导航到/dashboard时,路由器工作正常,但当我从/home导航到/profile:id时,路由器将我导航到工作正常的配置文件页面,但当我刷新它时,它将变为空白页面,并且不会给我任何404或重定向回主页,我正在使用 react路由器:“^4.2.0”, react路由器dom:“^4.2.2”, react路由器redux:“5.0.0-alpha.6”, 所以,如何摆脱空白页面,如果url位于/profile/5,然后在刷新页面上导航回主页或任何适当的内容,请帮助 inde

当我从/home导航到/dashboard时,路由器工作正常,但当我从/home导航到/profile:id时,路由器将我导航到工作正常的配置文件页面,但当我刷新它时,它将变为空白页面,并且不会给我任何404或重定向回主页,我正在使用

react路由器:“^4.2.0”,
react路由器dom:“^4.2.2”,
react路由器redux:“5.0.0-alpha.6”,

所以,如何摆脱空白页面,如果url位于/profile/5,然后在刷新页面上导航回主页或任何适当的内容,请帮助

index.js

ReactDOM.render(
,
document.getElementById('app-site')
);
App.js


常量AuthenticateRoute=({match})=>(
);
主应用程序


从您的代码

<Switch>
  <Route path="/" component={App} />
  <Route component={Page404} />
</Switch>

这是因为react无法定位用户导航的url的历史记录。 基本上,react属性将搜索保存在历史记录中的url,但在这里开发人员并没有使用它。 要解决这个问题,请遵循以下三个步骤。 像这样从“react router dom”导入使用{useHistory}; 赋值给一个变量,然后
使用主div/路由器,所有组件都封装在它里面

我已经完成了,我的问题在package.json中,我在我的package.json中指定了主页,例如:

.
.
"homepage": "http://mywebsite.com/relativepath"
.
.

后端是什么?节点,php?很可能是后端路由。当你刷新页面时,你正在通过“/profile”路径访问你的应用程序,后端首先会截取该路径,如果你只处理根uri“/”。@raul reneem,我不认为这是后端的问题……是的,因为你定义了除这两个路由器之外的任何其他路由器。所以,如果您尝试了除
/
之外的另一个,那么您将始终得到404。请参阅,我首先呈现index.js,如果找到“/”,然后它将转到组件“App”,在“App”中,如果Auth为true,则它将传递给MainApp,因此请指导我正确的方法,我需要如何正确实现
<Switch>                
    <Route path={`/home`} component={Home} />
    <Route path={`/profile/:id`} component={Profile} />
    <Route component={Page404} />
</Switch>
<Switch>
  <Route path="/" component={App} />
  <Route component={Page404} />
</Switch>
<Route exact  path="/" component={App} />
.
.
"homepage": "http://mywebsite.com/relativepath"
.
.