所以我开始使用 RiverPod。 尝试阅读 context.read(myProvider) 时,我收到此消息:
Too many positional arguments: 0 expected, but 1 found.
我正在使用 flutter_riverpod: ^0.14.0+3
转到读取函数定义 - 我转到具有此函数的 provider.dart 文件:
T read<T>() {
return Provider.of<T>(this, listen: false);
}
答案 0 :(得分:1)
所以 - 我发现 flutter_bloc 和 flutter_riverpod 有一些重叠。
import 'package:flutter_bloc/flutter_bloc.dart' show BlocBuilder, BlocProvider;
解决了问题。
答案 1 :(得分:-1)
你应该这样称呼它:
context.read<myProvider>();
其中 myProvider 是您的提供商的类型
正如你在定义中看到的,read 不接受参数。 它使用泛型:https://dart.dev/guides/language/language-tour#generics
编辑
检查这个问题: https://github.com/rrousselGit/river_pod/issues/214#issuecomment-781030552