Я использую пакет FirebaseUI React для входа / регистрации пользователя.У меня все работает, за исключением того, что я не могу получить перенаправление после успешного входа в систему.
-
StyledFirebaseAuth
отображается как компонент моего SignIn
компонента, который настраивает модель Auth FirebaseUI. - * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * '*' 101 '* 101'
- * Я уверен, чтовход выполнен успешно, так как я вижу как обратный вызов
signInSuccessWithAuthResult
, так и мой прослушиватель onAuthStateChanged
с положительным результатом.
РЕДАКТИРОВАТЬ: Кажется, проблема возникает с поставщиком электронной почты / паролем, но при использовании Google каквойдите в провайдер, перенаправление работает правильно.
Что я делаю не так?это полный файл:
import React from "react";
import firebase from 'firebase/app';
import firebaseApp from '../firebaseApp';
import StyledFirebaseAuth from 'react-firebaseui/StyledFirebaseAuth';
import { withRouter } from "react-router";
// Styles
import styles from '../App.css'; // This uses CSS modules.
class SignIn extends React.Component {
uiConfig = {
signInFlow: 'redirect',
signInOptions: [
firebase.auth.GoogleAuthProvider.PROVIDER_ID,
firebase.auth.FacebookAuthProvider.PROVIDER_ID,
firebase.auth.EmailAuthProvider.PROVIDER_ID,
],
callbacks: {
signInSuccessWithAuthResult: (authResult, redirectUrl) => {
console.log('signInSuccessWithAuthResult', authResult, redirectUrl);
this.props.history.push('/');
return false
}
},
};
render() {
return (
<div>
<h1>Caazam SignIn</h1>
<StyledFirebaseAuth uiConfig={this.uiConfig} firebaseAuth={firebaseApp.auth()} />
</div>
);
}
}
export default withRouter(SignIn);