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

这就解决了问题。希望它能帮助别人