使用react-router v4注销并返回初始应用程序状态

时间:2017-07-21 10:10:08

标签: reactjs react-router

在浏览器的第一个网址类型中,我的反应应用程序与react-router 4正常工作,它正在从/重定向到/fileupload我的代码示例:

<div>
 <AuthButton />
 <Redirect push path="/" to="/fileupload" />
 <Route path="/login" render={(props) => <LogIn {...props} />} />
 <PrivateRoute path="/fileupload" user={FBAuth.currentUser} component={FileUploadForm} />
</div>

但如果您在histiry.push('/') or replace('/')

中使用AuthButton
goToRoot = () => {
 this.props.history.push('/'); // replace('/');
};

从波纹管初始重定向

<Redirect push path="/" to="/fileupload" />

无法正常工作且未将网址重定向至/fileupload,并保留至/

任何想法问题在哪里?

如果我使用window.location.reload()或者如果我刷新浏览器一切正常

此问题有解决方法,如果我只使用this.props.location.pathname

goToRoot = () => {
  this.props.history.replace(this.props.location.pathname);
 };

我的AuthButton在退出后由withRouter包裹,我的LogIn组件已加载,一切正常。

但我仍然缺席,我不明白为什么重定向不起作用。

0 个答案:

没有答案