首页 > 解决方案 > Flutter Provider.of(...) 返回空值

问题描述

我有一个问题ChangeNotifierProxyProvider

我有一个提供商列表,例如

 providers: [
        ChangeNotifierProvider.value(
          value: Auth(),
        ),
        ChangeNotifierProxyProvider<Auth, MyProvider>(
            create: (context) => MyProvider(),
            update: (ctx, auth, myProvider) => myProvider.update(auth)),
      ],

如果我打电话Provider.of<MyProvider>(context, listen: false);context.read<MyProvider>();在我的班级中,我得到一个空对象。

在另一种情况下,如果我替换ChangeNotifierProxyProviderChangeNotifierProvider(没有代理),我得到了我的提供者对象。

我没有发现任何类似的问题。所以我想我错过了什么。

标签: flutterdartflutter-provider

解决方案


语法是:

ChangeNotifierProxyProvider<Auth, MyProvider>(
   create: (context) => MyProvider(),
  update: (ctx, auth, myProvider) {
    myProvider.update(auth);
    return myProvider;
  }
) 

推荐阅读