首页 > 解决方案 > 无法创建新的 Flutter Provider

问题描述

您好我正在尝试在我的应用程序的根级别添加一个新的提供程序。但是,新 Provider 的 create 函数(在这种情况下更容易由 int 类型的 Provider 表示)不会被调用,正如我在控制台中看到的那样。

class MyApp extends StatelessWidget {

  final List<SingleChildWidget> providers = [
    Provider<DynamicLinkService>(
      create: (context) {
        print("Dynamic Link Service Provider gets built");
        return DynamicLinkService();
      },
    ),
    Provider<int>(create: (context) {
      print("Int Provider gets built");
      return 1;
    }),
  ];

  @override
  Widget build(BuildContext context) {
    return MultiProvider(
      providers: providers,
      builder: (ctx, _) {
        return MaterialApp(
          theme: themeData(context),
          debugShowCheckedModeBanner: false,
          title: 'Flutter Demo',
          onGenerateRoute: (settings) {
            return getPageRoute(settings);
          },
          home: StartUpView(),
          navigatorKey: locator<NavigationService>().navigatorKey,
        );
      },
    );
  }
}

控制台输出:

Dynamic Link Service Provider gets built

标签: flutterflutter-provider

解决方案


推荐阅读