我在 Flutter 中的 InitState 有什么问题?

What is Wrong With My InitState in Flutter?

我正在尝试使用 flutter 和 firebase 进行自动登录并将其放入 initState 但它似乎没有被执行,因为我试图将它移至 Build Widget 但没有任何效果但是当我将它放入 LoginPageState 时它被执行但有错误: 使用不包含导航器的上下文请求导航器操作。 我的代码:

@override
  void initState() {
    super.initState();
    final user = FirebaseAuth.instance.currentUser();
    if (user == null) {
      print('User Null');
    } else {
      Navigator.pushReplacementNamed(context, '/HomePage');
    }
  }

您需要等待 FirebaseAuth.instance.currentUser() 完成。所以使用await如下。

final user = await FirebaseAuth.instance.currentUser()