具有问题生成器方法的main.dart文件ChangeNotifierProxyProvider未定义。
ChangeNotifierProxyProvider<Auth, Orders>(
builder: (ctx, auth, previousOrders) => Orders(
auth.token,
auth.userId,
previousOrders == null ? [] : previousOrders.orders,
),
),
答案 0 :(得分:0)
他们没有像 ChangeNotifierProxyProvider 中的 builder 这样的参数,这就是为什么您会收到该错误。
在ChangeNotifierProxyProvider中,您必须提供创建,更新和子项。
在这里,可以在创建时创建对象,而在更新时可以指定何时更改提供者的值,何时通知者取决于其他模型。
ChangeNotifierProxyProvider<MyModel, MyChangeNotifier>(
create: (_) => MyChangeNotifier(),
update: (_, myModel, myNotifier) => myNotifier
..update(myModel),
child: ...
);
答案 1 :(得分:0)
ChangeNotifierProvider 支持构建器参数,但从 v3.x.0迁移到v4.0.0 + 的某些参数已更改,构建器就是其中之一。
应该将 initialBuilder 替换为 create 。
“代理”提供商的构建器 应替换为更新
经典提供程序 的构建器应替换为创建。
答案 2 :(得分:0)
ChangeNotifierProxyProvider<Auth, Products>(
create: (_) => Products('', '', []),
update: (_, auth, prevProducts) {
return Products(
auth.token,
auth.userId,
prevProducts == null ? [] : prevProducts.items,
);
},
),