我想让多个路由共享同一个提供程序,但我找到的唯一方法是将这些路由封装在嵌套导航器中,并且该提供程序位于嵌套导航器的顶部
做这件事的任何其他方法
通常将Provider
放在小部件树的最顶部。例如,在提供者示例中,它位于runApp()
调用内部。
您可以将共享的内容传递给新路由和新的Provider小部件,后者可以将其提供给该路由的小部件树。因此,例如,您可以拥有一个可访问多条路由的bloc类的单个实例,但仍然只能实例化该bloc一次。