Dart:运算符'[]'未为类型"对象?函数()'。尝试定义运算符"[]"



我正在创建一个Flutter应用程序,我在实现Firebase时卡住了。

enter  return Container(
child: StreamBuilder<QuerySnapshot>(
stream: quizStream.snapshots(),
builder: (context, snapshot) {
return snapshot.data != null
? Container()
: ListView.builder(
itemCount: snapshot.data!.docs.length,
itemBuilder: (context, index) {
return QuizTile(
ImgUrl: snapshot.data!.docs[index].data()["imgdesc"] ,
);
});
}));
}

ImgUrl: snapshot.data!.docs[index].data()["imgdesc"]

这是我得到一个错误的行,它告诉我:

操作符'[]'没有为类型'Object '定义?()的函数。尝试定义操作符'[]'。

您需要将其转换为Map<String,dynamic>

ImgUrl: snapshot.data!.docs[index].data() as Map<String,dynamic>["imgdesc"],

或者这样写:

ImgUrl: snapshot.data!.docs[index].get('imgdesc'),

最新更新