扑 Provider.of<MyProvider>(...) returns 空
Flutter Provider.of<MyProvider>(...) returns null
我对 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>();
,我得到一个空对象。
在另一种情况下,如果我将 ChangeNotifierProxyProvider
替换为 ChangeNotifierProvider
(没有代理),我得到了我的提供者对象。
我没有找到任何类似的问题。所以我想我错过了什么。
语法是:
ChangeNotifierProxyProvider<Auth, MyProvider>(
create: (context) => MyProvider(),
update: (ctx, auth, myProvider) {
myProvider.update(auth);
return myProvider;
}
)
我对 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>();
,我得到一个空对象。
在另一种情况下,如果我将 ChangeNotifierProxyProvider
替换为 ChangeNotifierProvider
(没有代理),我得到了我的提供者对象。
我没有找到任何类似的问题。所以我想我错过了什么。
语法是:
ChangeNotifierProxyProvider<Auth, MyProvider>(
create: (context) => MyProvider(),
update: (ctx, auth, myProvider) {
myProvider.update(auth);
return myProvider;
}
)