Полагаю, вы не вошли в среду, отличную от dev, текущая реализация просто перенаправит пользователя, когда пользователь не найден.
Как отзыв о вашем текущем обработчике отправки: я думаю, что вы хотите слушать authStateChanged
, когда ваши компоненты монтируются, а не когда вызывается обработчик отправки. Обновите состояние соответствующим образом и используйте пользователя из состояния при поиске нужного документа.
Например:
componentDidMount () {
this.unsubscribe = firebase.auth().onAuthStateChanged((user) => {
if (user) this.setState({ user })
else window.location.href = '/'
})
}
componentWillUnmount () {
this.unsubscribe() // don't forget to unsubscribe when unmounting!
}
onSubmit = () => {
const { phoneNumber, points, user } = this.state;
let pointsToAdd = Number(points);
database.collection('users').doc(user.uid).collection('customers').doc(phoneNumber)
.set({
points: pointsToAdd
})
.then(() => {
console.log('success');
})
.catch((error) => {
console.log(error);
});
}