Firebase 如何将firestore对象转换为可在expo/react native中使用的对象?
这是我用来从firestore实例获取所有列表的函数。我希望能够检索列表并将它们添加到我的列表页面Firebase 如何将firestore对象转换为可在expo/react native中使用的对象?,firebase,react-native,google-cloud-firestore,expo,javascript-objects,Firebase,React Native,Google Cloud Firestore,Expo,Javascript Objects,这是我用来从firestore实例获取所有列表的函数。我希望能够检索列表并将它们添加到我的列表页面 `function getListings() { db.collection('listings').get().then((snapshot)=> { snapshot.docs.forEach(doc => { const id = doc.id const data = doc.data() console.log({id,da
`function getListings() {
db.collection('listings').get().then((snapshot)=> {
snapshot.docs.forEach(doc => {
const id = doc.id
const data = doc.data()
console.log({id,data})
})})`
这是登录到控制台的内容。2个单独的列表。两个物体都有
`Object {
"data": Object {
"amount": Object {
"amount": "1000 ",
},
"category": Object {
"category": Object {
"backgroundColor": "purple",
"label": "Fruits",
"value": 1,
},
},
"dateToday": Object {
"dateToday": "Todays Date",
},
"description": Object {
"description": "Crystal Clear",
},
"imageUris": Object {},
"title": Object {
"title": "Spring Water",
},
"userId": Object {
"userId": "User Name",
},
},
"id": "CB59J7NL7IXgKsUU6IyS",
}
Object {
"data": Object {
"amount": Object {
"amount": "99",
},
"category": Object {
"category": Object {
"backgroundColor": "purple",
"label": "Fruits",
"value": 1,
},
},
"dateToday": Object {
"dateToday": "Todays Date",
},
"description": Object {
"description": "Granny Smith",
},
"imageUris": Object {},
"title": Object {
"title": "Apples",
},
"userId": Object {
"userId": "User Name",
},
},
"id": "Tr2GjKES85HaSdeEOZwa",
}`
如何将对象转换为可以使用的数据?提前谢谢 首先应该创建一个类。我打电话给我的模特
class MyModel {
id="";
data = "";
category = "";
dateToday = "";
description ="";
imageUris ="";
userId ="";
constructor(props) {
this.data = props && props.data || this.data;
this.category = props && props.category || this.category;
this.dateToday = props && props.dateToday || this.dateToday;
this.description = props && props.description || this.description;
this.imageUris = props && props.imageUris || this.imageUris;
this.userId = props && props.userId || this.userId;
}
}
然后更新函数getListings()
,如下所示
function getListings() {
db.collection('listings').get().then((snapshot) => {
const myObjects = snapshot.docs.map((doc) => new MyModel({ ...doc.data(), id: doc.id }))
})
}
谢谢你,希登哈扎德!你的解决方案对我起了作用,我很高兴听到你这么说。