[英]How to prevent react-router from refreshing page?
What's the problem?有什么问题?
I am building a project in reactJs with react-router-dom v5.我正在使用 react-router-dom v5 在 reactJs 中构建一个项目。 I have added a default route to routing我添加了一个默认路由到路由
<Redirect to={"someComponent"}/> <重定向到={“someComponent”}/>
Now the problem is that a simple refresh also redirects me to the default route.现在的问题是,简单的刷新也会将我重定向到默认路由。 How to prevent that?如何防止这种情况?
Code snippet: App.js代码片段:App.js
return (
<div className="App">
<Switch>
<div id="wrapper" className="main_page">
<ErrorBoundary resetState={state}>
<Header/>
</ErrorBoundary>
<div id="page-wrapper" className="mainContentArea">
<Route path={`/dashboard/units`} component={Dashboard} />
<ErrorBoundary resetState={state}>
<Suspense fallback={<div>Loading..</div>}>
<Route path={`/dashboard/someRoute`} component={someComponent} />
</Suspense>
</ErrorBoundary>
<Redirect to={"someComponent"}/>
</div>
</div>
</Switch>
</div>
);
Can someone help me with the above problem?有人可以帮我解决上述问题吗? Due to Redirect in App.js, I am redirected to dashboard even with a simple refresh由于 App.js 中的重定向,即使进行简单的刷新,我也会被重定向到仪表板
Edit:I have Router and BrowserRouter in a separate component.This is just a snippet编辑:我在一个单独的组件中有路由器和浏览器路由器。这只是一个片段
Try adding the exact
prop to <Redirect to="/dashboard/units" />
but before that don't forget to wrap your routes into BrowserRouter: https://reactrouter.com/web/api/BrowserRouter尝试将exact
道具添加到<Redirect to="/dashboard/units" />
但在此之前不要忘记将您的路线包装到 BrowserRouter: https://reactrouter.com/web/api/BrowserRouter
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.