Подтвержденный адрес электронной почты не станет истинным, за исключением vscode, который я делаю горячей перезагрузки - PullRequest
0 голосов
/ 28 апреля 2020

У меня проблема с подтвержденным адресом электронной почты. Я хочу, чтобы подтвержденный адрес электронной почты был равен true, тогда go на дом. У меня это условие if в RaisedButton, поэтому, если пользователь нажимает кнопку и электронная почта подтверждает статус true, тогда возвращаемся в Wrapper.

dynamic verifEmail = await _auth.isEmailVerified();
if (verifEmail == true) {
   print('in');
   // Navigator.of(context).pushNamed(Home.tag);
   return Wrapper();
}

это код isEmailVerified ()

Future<bool> isEmailVerified() async {
  FirebaseUser user = await _auth.currentUser();
  await user.reload();
  user = await _auth.currentUser();
  return user.isEmailVerified;
}

и это код класса Wrapper.

class Wrapper extends StatelessWidget {
@override
Widget build(BuildContext context) {
  final user = Provider.of<User>(context);
  return Scaffold(
    body :StreamBuilder<FirebaseUser>(
    stream: FirebaseAuth.instance.onAuthStateChanged,
    builder: (BuildContext context, snapshot) {
      if (snapshot.hasData) {
        print('Verif email ' + snapshot.data.isEmailVerified.toString());
        return snapshot.data.isEmailVerified
            ? Home(uidCode: user.uid)
            : VerifEmail(user: snapshot.data);
      }
      else {
        return Authenticate();
      }
    },
  ),
  );
}
}

Проблема в классе Wrapper, статус подтверждения электронной почты не станет истинным, за исключением vscode, который я выполняю горячей перезагрузкой. Поэтому я не могу go перейти на домашнюю страницу, за исключением того, что я делаю горячую перезагрузку в vscode. Пожалуйста, кто-нибудь может решить эту проблему?

1 Ответ

0 голосов
/ 28 апреля 2020

Я не знаю, в чем проблема, но если вам нужно выполнить горячую перезагрузку, добавление вызова setState((){}) где-нибудь может решить проблему.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...