注销Flutter Firebase应用程序后丢失buildContext



我可以第一次使用Flutter Firebase应用程序登录,在我注销并再次登录后,我得到了提供商的断章取义错误,应用程序返回登录屏幕。当我再次登录时,我能够成功登录。我相信在退出Flutter Firebase应用程序后,我正在失去构建上下文。

我的所有供应商都在材料应用程序上方,材料应用程序的主页是登录屏幕。我的小工具检查器在签名前的屏幕截图:https://i.stack.imgur.com/Sznk0.png成功登录后,小部件检查器如下所示:https://i.stack.imgur.com/2omkU.png成功注销后我的小部件检查器的屏幕截图:https://i.stack.imgur.com/lUHjm.png

有什么建议吗?

尝试将您的Provider范围放在根级别。我不知道你的提供者范围内有什么,因为我没有看到你的代码,但它应该是这样的。

return Provider<int>.value(
value: value,
child: MyApp(),
);

我建议你研究Riverpod,因为它可以以一种更清洁的方式进行,而不必提及所有这些不同的提供商。像这样:

return ProviderScope(
child: MyApp(),
);

仍然面临这个问题。使用者提供程序没有解决问题。

最新更新