有没有办法在Flutter中的多个PageRoutes中使用InheritedWidget?

时间:2018-08-18 20:07:00

标签: dart flutter

我在应用程序的根目录中有一个InheritedWidget,基本上在我的第一个Scaffold的第一个构建函数的顶部。我可以使用.of(context)函数引用该窗口小部件,这对第一页的所有子窗口小部件都很好。如果我将另一页推入Navigator堆栈,则InheritedWidget.of()调用会失败,正如我认为的那样。有什么方法可以共享对此小部件的访问权限?我试图避免不必要地将小部件传递到树上。 ScopedModel具有相同的限制。我当时正在考虑将上下文变量传递到树上,但这听起来不对,也不能解决问题。

1 个答案:

答案 0 :(得分:6)

您应该用它包装您的根窗口小部件,例如您的MaterialApp

MyInheritedWidget(
      child: MaterialApp(
        home: home))