如何在Flutter中使用多个提供程序

时间:2020-05-15 08:10:13

标签: flutter dart

我正在尝试在应用程序中使用多个提供程序,但是通过使用以下代码,我在构建器时遇到了编译时错误

代码

ChangeNotifierProvider(builder: (_) => FirstProvider()),
ChangeNotifierProvider(builder: (_) => SecondProvider()),

3 个答案:

答案 0 :(得分:1)

您可以使用MultiProvider这样做。如下。

MultiProvider(
  providers: [
    ChangeNotifierProvider(builder: (_) => FirstProvider()),
    ChangeNotifierProvider(builder: (_) => SecondProvider()),
  ],
  child: someWidget,
)

答案 1 :(得分:1)

已弃用 builder ,您可以参考此链接以获取更多信息Builder Deprecation

我们可以使用多个提供程序

 MultiProvider(
          providers: [
            ChangeNotifierProvider<ProductDataProvider>(
                create: (_) => ProductDataProvider()),
            ChangeNotifierProvider<AuthenticationProvider>(
                create: (_) => AuthenticationProvider()),
          ],
          child: Container())

答案 2 :(得分:0)

您可以像这样使用它:

    MultiProvider(
      providers: [
        ChangeNotifierProvider(create: (context) => CartModel()),
        Provider(create: (context) => SomeOtherClass()),
      ],
      child: MyApp(),
    ),