Flutter 异步快照拒绝类型批注
我有一个Flutter 异步快照拒绝类型批注,flutter,rxdart,Flutter,Rxdart,我有一个StreamBuilder,它从我的bloc组件中获取数据 但是,它一直拒绝我的类型注释异步快照,只接受动态类型异步快照。然而,在我看过的例子中,它们确实有类型注释,没有抱怨 这是我的流创建 Widget buildList(StoriesBloc bloc) { return StreamBuilder( stream: bloc.topIds, builder: (BuildContext context, AsyncSnapshot<List<int>&g
StreamBuilder
,它从我的bloc组件中获取数据
但是,它一直拒绝我的类型注释异步快照
,只接受动态类型异步快照
。然而,在我看过的例子中,它们确实有类型注释,没有抱怨
这是我的流创建
Widget buildList(StoriesBloc bloc) {
return StreamBuilder(
stream: bloc.topIds,
builder: (BuildContext context, AsyncSnapshot<List<int>> snapshot) {
if (!snapshot.hasData) {
return Text("Still Waiting for Ids to fetch");
}
return ListView.builder(
itemCount: snapshot.data.length,
itemBuilder: (context, int index) {
return Text('${snapshot.data[index]}');
},
);
},
);
小部件构建列表(StoriesBloc bloc){
返回流生成器(
流:bloc.topIds,
生成器:(BuildContext上下文,异步快照){
如果(!snapshot.hasData){
返回文本(“仍在等待ID提取”);
}
返回ListView.builder(
itemCount:snapshot.data.length,
itemBuilder:(上下文,int索引){
返回文本(“${snapshot.data[index]}”);
},
);
},
);
}
下面是生成的VSCode错误。
我可能做错了什么?发现我的
bloc.topIds
结果类型不是List
类型
Observable get topIds=>\u topIds.stream代码>
所以我只是简单地修改它以满足所需的类型
Observable get topIds=>\u topIds.stream代码>
这就解决了问题。希望它能帮助其他人。结果显示我的bloc.topIds
结果类型不是List
类型
Observable get topIds=>\u topIds.stream代码>
所以我只是简单地修改它以满足所需的类型
Observable get topIds=>\u topIds.stream代码>
这就解决了问题。希望它能帮助别人