0

我有一个需要访问的类MaterialApp context,但它也需要从所有路由进行全局访问。

要创建一个全局提供者,我可以用 包装MaterialAppProvider但这样的提供者无权访问context. 因此,我必须在MaterialApp.

我意识到我可以用提供者包装每条路线,因为它是无状态的,但我想知道是否有更好的方法来做到这一点。

提前致谢!

4

2 回答 2

3

您可以使用builderonGenerateRouteMaterialApp

MaterialApp(
  builder: (context, child) {
    return Provider.value(
       value: // TO-DO use context
      child: child, 
    );
  }
) 
于 2019-08-30T17:12:16.060 回答
0

您可以将材料应用程序包装在一个 Builder 中,以获得一个全新的上下文。

于 2019-08-30T17:08:24.093 回答