Text
我正在尝试使用以下代码在小部件上打印 1、2 和 3 。但问题是它只打印 1 和 3。但是通过属性 concat 应该按顺序打印所有数据对吗?
Stream<String> get concatStream => Observable.concat(
[new Observable.just(1.toString()),
new Observable.timer(2.toString(), new Duration(seconds: 1)),
new Observable.just(3.toString())]);
奇怪的是,如果我使用以下配置。它按顺序打印所有 3 个值。可能是什么问题?
Stream<String> get concatStream => Observable.concat([
new Observable.just(1.toString()),
new Observable.timer(2.toString(), new Duration(seconds: 2)),
new Observable.timer(3.toString(),new Duration(seconds: 1))
]);
我的代码StreamBuilder
:
return StreamBuilder(
stream: getStream(),
builder: (BuildContext context, AsyncSnapshot<String> snapshot) {
if (snapshot.hasData) {
print(snapshot.data);
return Text(
snapshot.data,
textAlign: TextAlign.center,
style: TextStyle(fontWeight: FontWeight.w300),
);
} else if (snapshot.hasError) {
return Text("Error");
} else {
return CircularProgressIndicator();
}
});