0

我有一个Flutter应用程序,其中包含可以从 aBottomNavigationBar和 a访问的部分Drawer。我在我的应用程序的根级别有这个工作Scaffold,然后我使用Navigator小部件在每个部分中创建单独的路由和堆栈。当BottomNavigationBar我将新屏幕推送到堆栈上时,这些仍然存在,并且这些新屏幕将有自己的AppBar和特定于这些用户旅程的操作。

问题是我需要Drawer出现在我的所有屏幕上,并且在单个屏幕上设置一个新AppBarScaffold会删除Drawer我在根级别中设置的Scaffold

我怎样才能将它Drawer传递给我的所有屏幕AppBar实例?我不想Drawer在多个小部件上创建新实例,所以我应该创建一个SingletonDrawer什至整个Scaffold? 这里的最佳做法是什么?

4

1 回答 1

0

您可以使用状态管理包。我建议使用提供程序包或flutter_bloc,以便您可以从flutter UI 中获得更多信息,但请注意它们的名称,这是由flutter 团队制作的文档链接,将帮助您处理所有状态管理包: https:// flutter.dev/docs/development/data-and-backend/state-mgmt/options

这个是针对 bloc_flutter 文档的,我在之前的链接文档中找不到它:https ://bloclibrary.dev

于 2020-10-18T23:52:39.130 回答