以下代码抛出此错误“无法无条件调用方法'[]',因为接收器可以为'null'”
if (snapshot.hasData == true) {
return ListView(
children: snapshot.data!.docs.map((DocumentSnapshot document) {
return ListTile(
title: Text(document.data()['title']),
);
}).toList(),
);
}
是否与空安全有关?怎么解决?
答案 0 :(得分:1)
此问题与 Flutter 更新有关。
在最新的 Flutter 更新中,无需添加 .data()
。
从说明中的代码中删除.data()
可以解决问题。
答案 1 :(得分:1)
试试 doc.get('title')
代替 document.data()['title']
答案 2 :(得分:0)
document.data() 可能为 null。如果您确定 document.data() 不会为您返回 null,只需添加 document.data()!['title']
(注意!)。