Firebase 如何将firestore对象转换为可在expo/react native中使用的对象?

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

这是我用来从firestore实例获取所有列表的函数。我希望能够检索列表并将它们添加到我的列表页面

`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 }))
        })
    }

谢谢你,希登哈扎德!你的解决方案对我起了作用,我很高兴听到你这么说。