你遇到的错误信息表明在使用 DocumentSnapshot
类型时,尝试使用 []
运算符,但该类型没有定义这个运算符。DocumentSnapshot
是 Firebase Firestore 中的一个类,用于表示从 Firestore 数据库中读取的文档快照。
[]
: 在许多编程语言中,[]
运算符用于访问数组或对象的元素。DocumentSnapshot
类型没有定义 []
运算符,因此当你尝试使用 documentSnapshot['field']
或 documentSnapshot.field
访问字段时,会报错。
要访问 DocumentSnapshot
中的字段,应该使用 data()
方法或直接访问 val()
方法(取决于具体的 SDK 版本和语言)。以下是一些示例:
data()
方法const docRef = db.collection('users').doc('user1');
docRef.get().then((doc) => {
if (doc.exists()) {
const data = doc.data();
console.log(data.name); // 访问 'name' 字段
} else {
console.log("No such document!");
}
});
val()
方法(适用于某些 SDK 版本)const docRef = db.collection('users').doc('user1');
docRef.get().then((doc) => {
if (doc.exists()) {
const data = doc.val();
console.log(data.name); // 访问 'name' 字段
} else {
console.log("No such document!");
}
});
DocumentSnapshot
类型没有定义 []
运算符。data()
或 val()
方法访问文档中的字段。通过这些方法,你可以正确地访问和处理 DocumentSnapshot
中的数据。
领取专属 10元无门槛券
手把手带您无忧上云