I am working on a React project. I have two files contact.js and functions.js.
In contact.js file
import {getUserContacts} from './functions.js';
useEffect(() => {
let temp=getUserContacts();
console.log(temp);
}, [])
In functions.js file
export const getUserContacts = () => {
const contactDetailsArr = [];
db.collection("users").doc(userId).get()
.then(docs => {
const contactsObject = docs.data().contacts;
for (let contact in contactsObject) {
db.collection("users").doc(contact).get()
.then(userDetail => {
contactDetailsArr.push({
userId: contact,
lastMessage: contactsObject[contact].lastMsg,
time: contactsObject[contact].lastMsgTime,
email: userDetail.data().emailId,
active: userDetail.data().active,
img: userDetail.data().imageUrl
})
})
}
return contactDetailsArr;
})
.catch(err => {
console.log(err);
})
}
As one can see in the functions.js when I console contactDetails I am able to see the data. But in contact.js when I console the returned data I get undefined.