我正在Flutter中使用BLoC模式(flutter_bloc),我遇到了一个设计挑战。我理解,建议尽可能靠近使用BLoC的位置提供BLoC,以避免不必要的全局状态。当把BlocBuilderwidgets放在widget树的下面时,这是有意义的,但是我正在努力解决BlocProvider的位置问题。
在两个或多个页面之间共享BLoC的情况下,我发现很难在不使其接近全局的情况下定位BlocProvider。例如,在我目前的应用程序结构中,我使用命名路由。这导致了一种结构,其中所有页面仅共享一个共同的祖先页面。如果我在那里提供BlocProvider,在main.dart中,它基本上变成了全局。另一方面,如果我对两个不同的页面使用相同的BLoC,我不确定将BlocProvider放在哪里。
在Flutter中使用命名路由时,是否有推荐的方法为多个页面提供BLoC,而无需求助于全局设置?
1条答案
按热度按时间nc1teljy1#
我使用下面的模板基本上路由。我可以轻松地管理块供应商的每一页的应用程序。
app_route.dart:
main.dart:
导航: