Я пытаюсь интегрировать службу Firebase с платформой React-Native.Я пытаюсь следовать этому руководству в Udemy: https://www.udemy.com/the-complete-react-native-and-redux-course/
Шаги, за которыми я следовал:
- Загруженная база данных Firebase с помощью команды npm: установка npm --save response-native-firebase
- Создание проекта в консоли Firebase.
Вставка конфигурации, созданной Firebase, в собственный код React.
Класс App расширяет Компонент {
componentWillMount() {
firebase.initializeApp({
apiKey: 'AIzaSyAMuW4adFuW_XoYvpvke_iHTvlAkuVJ7Fk',
authDomain: 'authproj2.firebaseapp.com',
databaseURL: 'https://authproj2.firebaseio.com',
projectId: 'authproj2',
storageBucket: 'authproj2.appspot.com',
messagingSenderId: '654736603029'
});
firebase.auth().onAuthStateChanged((user) => {
if(user)
{
this.setState( {loggedIn:true} );
}
else {
this.setState( {loggedIn: false } );
}
});
}}
И в другом компоненте React я создаю форму входа, в которой есть кнопка «Отправить».
Функция onButtonPress:
onButtonPress () {
const { email , password } = this.state;
this.setState({error: '', loading: true});
firebase.auth().signInWithEmailAndPassword(email, password)
.then(this.onLoginSuccess.bind(this))
.catch(() => {
firebase.auth().createUserWithEmailAndPassword(email, password)
.then(this.onLoginSuccess.bind(this))
.catch(this.onLoginFailure.bind(this));
});
}
Это функции onLoginSuccess и OnLoginFailure:
onLoginSuccess () {
this.setState( {email:'', password:'', error:'', loading:false});
}
onLoginFailure () {
this.setState( {error: "Authentication Failure!!", loading:false } );
}
Но когда я нажимаю на кнопку, никаких действий не предпринимаетсяместо.В идеале он должен создать новую учетную запись, если адрес электронной почты и пароль введены впервые, и показать другую страницу, если адрес электронной почты и пароль верны.Но где-то интеграция Firebase с React-native идет неправильно.