У меня есть настройка экрана проверки аутентификации, в которой строитель прослушивает authStateChanges() и, надеюсь, обновит экран и покажет домашнюю страницу, когда пользователь входит в систему. Я пытался возиться с проверкой аутентификации, что является моим главным подозрением. , а также с функциями входа и выхода из системы. Я не знаю, что еще делать, любая помощь приветствуется.
@override //this is a stateful widget btw
Widget build(BuildContext context) {
return StreamBuilder(
stream: AuthHelper().authStateChanges, // just a getter for FirebaseAuth.instance.authStateChanges()
builder: (context, snapshot) {
return snapshot.hasData
? const HomeScreenLayout()
: const LoginOptionsScreen();
},
);
}
А вот как выглядит кнопка:
StandardButton(
...,
onTap: () {
AuthHelper().signInWithEmail(
email: userEmail.text.trim(),
password: password.text.trim(),
);
},
),
// the method inside AuthHelper class
Future signInWithEmail({email, password}) async {
await FirebaseAuth.instance.signInWithEmailAndPassword(
email: email,
password: password,
);
}
Проблема в том, что после ввода правильных данных для входа и нажатия кнопки экран, который в противном случае должен был бы обновиться, не обновляется. Мне приходится каждый раз перезапускать приложение, чтобы увидеть изменения.
Странно то, что функция выхода для того же класса, работающая с одной и той же кнопкой на главном экране, работает правильно и перенаправляет меня на страница входа автоматически
StandardButton(
...,
onTap: () {
AuthHelper().signOut();
},
),
// the method inside AuthHelper class
Future signOut() async {
await _firebaseInstance.signOut();
}
Подробнее здесь: https://stackoverflow.com/questions/786 ... -hot-resta
Flutter Firebase Instance authStateChanges() обновляет экран только после горячего перезапуска ⇐ Android
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
Могу ли я добавить многоуровневое индексирование для функций горячего кодирования?
Anonymous » » в форуме Python - 0 Ответы
- 66 Просмотры
-
Последнее сообщение Anonymous
-