I'm having trouble copying the mapped return of a onSnapshot listener from firebase inside an array (But very IMPORTANT : I don't want to use the state syntax):
  useEffect(() => {
    let copyChats = [];
    const unsubscribe = db.collection('chats').onSnapshot(snapshot =>
        (
            console.log(snapshot.docs.map(doc => ({
                    id: doc.id,
                    data: doc.data()
                }
            )))
        )
    )
    return unsubscribe;
}, [])
This code returns correctly the content in the console:
Array [
  Object {
    "data": Object {
      "chatName": "presidentielle",
    },
    "id": "8DRKgDCW54Zt4yf1anoR",
  },
  Object {
    "data": Object {
      "chatName": "titi",
    },
    "id": "9MudmtUfi9nGiWMpwHGk",
  },
  Object {
    "data": Object {
      "chatName": "essais",
    },
    "id": "Hi5a8FpDaf7EwwwpmOXn",
  },
  Object {
    "data": Object {
      "chatName": "titi",
    },
    "id": "ZnX3jaRkrJN4oiNCC3un",
  },
  Object {
    "data": Object {
      "chatName": "essais",
    },
    "id": "dPruNs46X0jbhr0sL7xk",
  },
  Object {
    "data": Object {
      "chatName": "test chat",
    },
    "id": "vxs7RdSBER83TOCPHko1",
  },
]
Array [
  Object {
    "data": Object {
      "chatName": "presidentielle",
    },
    "id": "8DRKgDCW54Zt4yf1anoR",
  },
  Object {
    "data": Object {
      "chatName": "titi",
    },
    "id": "9MudmtUfi9nGiWMpwHGk",
  },
  Object {
    "data": Object {
      "chatName": "essais",
    },
    "id": "Hi5a8FpDaf7EwwwpmOXn",
  },
  Object {
    "data": Object {
      "chatName": "titi",
    },
    "id": "ZnX3jaRkrJN4oiNCC3un",
  },
  Object {
    "data": Object {
      "chatName": "essais",
    },
    "id": "dPruNs46X0jbhr0sL7xk",
  },
  Object {
    "data": Object {
      "chatName": "test chat",
    },
    "id": "vxs7RdSBER83TOCPHko1",
  },
]
But what I want to do is to copy this exact data model in an the array copyChats, and I can't do it. I've tried all kinds of spread and push syntax.
   useEffect(() => {
        let copyChats = [];
        const unsubscribe = db.collection('chats').onSnapshot(snapshot =>
            (
                copyChats = snapshot.docs.map(doc => ({
                        id: doc.id,
                        data: doc.data()
                    }
                ))
            )
        )
        console.log(copyChats);
        return unsubscribe;
    }, [])
The only thing I'm able to get is an empty array !like the code above which give me this return:
Array []
If you have any Idea. Thank you..
 
    