Flutter 渲染streamBuilder之前的延迟
我有streamBuilder,当我带着它进入页面一瞬间,函数的零返回出现错误,即数据没有时间加载,函数返回nullFlutter 渲染streamBuilder之前的延迟,flutter,dart,Flutter,Dart,我有streamBuilder,当我带着它进入页面一瞬间,函数的零返回出现错误,即数据没有时间加载,函数返回null if(客户!=null){ 返回流生成器( 流:客户, //初始数据:, 生成器:(上下文,异步快照){ if(snapshot.hasData){ 如果(snapshot.data!=null){ 返回ListView.builder( itemCount:snapshot.data.documents.length, 填充:所有边缘设置(5.0), itemBuilder:
if(客户!=null){
返回流生成器(
流:客户,
//初始数据:,
生成器:(上下文,异步快照){
if(snapshot.hasData){
如果(snapshot.data!=null){
返回ListView.builder(
itemCount:snapshot.data.documents.length,
填充:所有边缘设置(5.0),
itemBuilder:(上下文,i){
返回新的ListTile(
标题:
列(mainAxisAlignment:mainAxisAlignment.start,
儿童:[
文本(快照.data.documents[i].data['pickedDay'],),
文本(snapshot.data.documents[i].data['pickedTime']),
文本(snapshot.data.documents[i].data['service']),
文本(snapshot.data.documents[i].data['phoneNumber']),
分隔器(高度:10,颜色:primaryColor2),
],),
},
);
},
);
}
}
// }
},
);
}否则{
返回新的循环ProgressIndicator();
}
}>
如何解决此问题?当snapshot.hasData为false时,构建器未返回数据。这就是为什么你会看到这个错误 你应该还些东西。它可以只是一个空容器或一个装载微调器。 大概是这样的:
if (snapshot.hasData || snapshot.data != null) {
//your current code
}else{
return Container()
}
if (snapshot.hasData || snapshot.data != null) {
//your current code
}else{
return Container()
}