Flutter Firestore:未为类“Object?”定义运算符“[]”。 - “对象”来自“飞镖:核心”
Posted
技术标签:
【中文标题】Flutter Firestore:未为类“Object?”定义运算符“[]”。 - “对象”来自“飞镖:核心”【英文标题】:Flutter Firestore: The operator '[]' isn't defined for the class 'Object?'. - 'Object' is from 'dart:core' 【发布时间】:2022-01-22 15:12:24 【问题描述】:我尝试了很多东西,但它一直显示错误:
children: snapshot.data!.docs.map((document)
final data = document.data()! as Map<String, dynamic>;
print(data);
return ProductCard(
title: Text(data["name"]),
imageUrl: document.data()['images'][0],
price: "\$$document.data()['price']",
productId: document.id, onPressed: (),
);
).toList(),
);
【问题讨论】:
请阅读Under what circumstances may I add “urgent” or other similar phrases to my question, in order to obtain faster answers? - 总结是这不是解决志愿者的理想方式,并且可能会适得其反。请不要将此添加到您的问题中。 【参考方案1】:这是我的错误,正确的解决方案是:
children: snapshot.data!.docs.map((document)
final data = document.data()! as Map<String, dynamic>;
print(data);
return ProductCard(
title: "$data["name"]",
imageUrl: data['images'][0],
// price: "\$$data['price']",
productId: document.id, onPressed: (),
);
).toList(),
【讨论】:
以上是关于Flutter Firestore:未为类“Object?”定义运算符“[]”。 - “对象”来自“飞镖:核心”的主要内容,如果未能解决你的问题,请参考以下文章
Cloud Firestore 错误未为“对象”类型定义运算符“[]”。升级到 2.0.0 后?
Flutter:未为 DataSnapshot 类定义 forEach 方法
未为类型“Object Function()”定义运算符“[]”
Flutter 2 构建项目:错误:没有为类“_LoadingIndicatorState”定义方法“SpinKitPouringHourglass”