下面的例子是:我将以以下方式使用MyProvider,SomeProvidersClass.get().myProvider;来自这个结构:
class SomeProvidersClass {
late final myProvider =
Provider((ref) => MyProvider());
MyProvider get myProvider =>
read(providers.myProvider);
}但是我注意到MyProvider是通过一些异步函数初始化的;所以我尝试通过以下方式来实现它:
class MyProvider {
late final SomeType _someVariable; // need to init in async way
Future<void> init() async => _someVariable = await SomeType.getInstance();
MyProvider();
// example of content of this provider that i am going to use
dynamic? getSmth() => _someVariable.getSmth();
}我得到了以下错误
LateInitializationError: field has not been initialized;你能建议我怎么做吗?我是新来的河运商和供应商:)
发布于 2022-02-09 23:05:32
试试这个:
class MyProvider {
SomeType? _someVariable; // need to init in async way
Future<void> init() async => _someVariable = await SomeType.getInstance();
MyProvider(){
init();
}
// example of content of this provider that i am going to use
dynamic? getSmth() => _someVariable?.getSmth();
}https://stackoverflow.com/questions/71057583
复制相似问题