Fix pop may call multiple times

This commit is contained in:
2024-06-02 14:03:33 +00:00
committed by GitHub
parent ca8fb15f0e
commit 727d3ecbe3
4 changed files with 7 additions and 1 deletions

View File

@@ -45,6 +45,7 @@ class _LoginPageState extends State<LoginPage>
bool _isValid = false;
bool _isLogin = false;
bool _checkAuth = false;
bool _tryPoped = false;
void _onStateChanged(dynamic _) {
setState(() {});
@@ -120,10 +121,12 @@ class _LoginPageState extends State<LoginPage>
Widget build(BuildContext context) {
tryInitApi(context);
_checkStatus(context);
if (isTop(context) && auth.user != null) {
if (isTop(context) && auth.user != null && !_tryPoped) {
SchedulerBinding.instance.addPostFrameCallback((_) {
context.canPop() ? context.pop() : context.go("/");
});
_tryPoped = true;
return Container();
}
return Scaffold(
appBar: AppBar(