如何在通过 Redux 操作进行身份验证后重定向用户?
Posted
技术标签:
【中文标题】如何在通过 Redux 操作进行身份验证后重定向用户?【英文标题】:How to redirect user after authentication from Redux action? 【发布时间】:2019-06-06 14:47:22 【问题描述】:我在 Redux 文件中使用 firebase 来验证我的用户。但是如何将他从登录页面重定向到另一个页面?
import firebase from '../app/firebase/firebase.js';
export const SIGN_IN = 'SIGN_IN'
export const GET_BOOKS = 'GET_BOOKS'
export const signInState = (email, password) => dispatch =>
firebase.auth()
.signInWithEmailAndPassword(email, password)
.then(() =>
dispatch(
type: 'SIGN_IN',
)
push("/home") /// here i try to redirect user
)
.catch((error) =>
console.log(error);
alert(error);
)
而且我的 App 文件中有 PrivateRoute。如何到达这条“路”?
<PrivateRoute
path="/home"
signedInStatus=this.props.signedInStatus
component=Home />/>
【问题讨论】:
【参考方案1】:我刚刚用过Connected-React-Router
解决我的问题:
export const signInState = (email, password) => dispatch =>
firebase.auth()
.signInWithEmailAndPassword(email, password)
.then(() =>
dispatch(
type: 'SIGN_IN',
)
dispatch(push('/home')) /// <-----that was an answer
)
【讨论】:
以上是关于如何在通过 Redux 操作进行身份验证后重定向用户?的主要内容,如果未能解决你的问题,请参考以下文章
强制 Shibboleth 在身份验证后重定向到特定 URL