使用 react-router 重新加载页面重定向到主页
Reload page redirect to main page with react-router
当我尝试重新加载子页面应用程序时,将我重定向到主页。
当我输入浏览器子页面(例如:/about
)时,应用会将我重定向到主页。
这是我在 App.js.
中的路由器组件
P.S 我在 React 中使用箭头函数
<Router>
<Header />
<Container history={props.history}>
<Route exact path="/" component={SelectLogin} />
<Route path="/selectlogin" component={SelectLogin} />
<Route path="/about" component={About} />
<Route path="/register" component={RegisterPanel} />
<Route path="/addcomment" component={AddComment} />
<Route path="/findposts" component={FindPosts} />
<Route path="/lostposts" component={LostPosts} />
<Route path="/posts" component={Posts} />
<Route path="/lostpost" component={LostPost} />
<Route path="/findrequest" component={FindRequest} />
<Route path="/lostrequest" component={LostRequest} />
<Route path="/requestsummary" component={Summary} />
<Route path="/logincode" component={LoginCodePanel} />
<Route path="/logindata" component={LoginDataPanel} />
<Route path="/adminpanel" component={AdminPanel} />
<Route path="/editprofile" component={EditProfile} />
<Route path="/userpanel" component={UserPanel} />
<Route path="/userposts/:id" component={UserPosts} />
<Route path="/editpost" component={EditPost} />
</Container>
</Router>
我相信你错过了中间的 <Switch />
个组件。
尝试以下操作:
<Router>
<Switch>
<Header />
<Container history={props.history}>
<Route exact path="/" component={SelectLogin} />
{ /* all the other routes */ }
<Route path="/editpost" component={EditPost} />
</Container>
</Switch>
</Router>
查看基本路由示例 here。
希望对您有所帮助!
当我尝试重新加载子页面应用程序时,将我重定向到主页。
当我输入浏览器子页面(例如:/about
)时,应用会将我重定向到主页。
这是我在 App.js.
P.S 我在 React 中使用箭头函数
<Router>
<Header />
<Container history={props.history}>
<Route exact path="/" component={SelectLogin} />
<Route path="/selectlogin" component={SelectLogin} />
<Route path="/about" component={About} />
<Route path="/register" component={RegisterPanel} />
<Route path="/addcomment" component={AddComment} />
<Route path="/findposts" component={FindPosts} />
<Route path="/lostposts" component={LostPosts} />
<Route path="/posts" component={Posts} />
<Route path="/lostpost" component={LostPost} />
<Route path="/findrequest" component={FindRequest} />
<Route path="/lostrequest" component={LostRequest} />
<Route path="/requestsummary" component={Summary} />
<Route path="/logincode" component={LoginCodePanel} />
<Route path="/logindata" component={LoginDataPanel} />
<Route path="/adminpanel" component={AdminPanel} />
<Route path="/editprofile" component={EditProfile} />
<Route path="/userpanel" component={UserPanel} />
<Route path="/userposts/:id" component={UserPosts} />
<Route path="/editpost" component={EditPost} />
</Container>
</Router>
我相信你错过了中间的 <Switch />
个组件。
尝试以下操作:
<Router>
<Switch>
<Header />
<Container history={props.history}>
<Route exact path="/" component={SelectLogin} />
{ /* all the other routes */ }
<Route path="/editpost" component={EditPost} />
</Container>
</Switch>
</Router>
查看基本路由示例 here。
希望对您有所帮助!