Flutter 颤振:如何使用';等待';等待其他集团事件完成

Flutter 颤振:如何使用';等待';等待其他集团事件完成,flutter,async-await,state,bloc,Flutter,Async Await,State,Bloc,在screen init上,我通过externalData集团加载数据。在同一屏幕上,我还呈现了另一个由internalData_bloc控制的小部件,用于用户输入,这取决于导入记录的数量(需要多少行)。当然,渲染比数据加载快,所以我得到了所需的空行 我觉得这很好,但是,我没有得到它的工作。答案是 Future loginProcess()异步{ 等待(var结果在_userBloc.state中){ if(result.status==status.finished){ 返回; } } }

在screen init上,我通过externalData集团加载数据。在同一屏幕上,我还呈现了另一个由internalData_bloc控制的小部件,用于用户输入,这取决于导入记录的数量(需要多少行)。当然,渲染比数据加载快,所以我得到了所需的空行

我觉得这很好,但是,我没有得到它的工作。答案是

Future loginProcess()异步{
等待(var结果在_userBloc.state中){
if(result.status==status.finished){
返回;
}
}
}
我在我的存储库中。在这里,我还将外部数据存储在一个变量中。因此,在repository类中,我有一个函数来获取记录的数量(
属性
存储在存储库中,我想返回它的长度)

未来GetNoofProperty(int问题)异步{
LogicGraphsPStmntBloc bloc=LogicGraphsPStmntBloc();
Future propertiesLoad()异步{
等待(集团中的var s){
如果(s==LogicGraphsPStmntLoadSuccess){
返回;
}
}
}
propertiesLoad();
返回属性。长度;
}
但无论我尝试为
输入什么,等待(XXXX中的var结果)
如果(s.YYY==ZZZ)
,它都不起作用。我的理解是,XXXX需要是一个流,这就是为什么我使用
bloc=LogicGraphsPStmntBloc()
。但我想这会创建另一个实例,而不是我的小部件中使用的实例<代码>逻辑图HSPSTMNTBLOC也不起作用,状态也不起作用
bloc
至少不会在编辑器中抛出错误,但除了实例问题之外,if语句还会抛出错误,其中在cubit.dart
StreamSubscription listen(…
cancelOnError
调用。有人有什么启示吗