Я пытаюсь получить коллекцию компьютеров и поместить их в массив, чтобы я мог отобразить их с помощью карты в моем операторе возврата компонента responsejs. Однако массив всегда пуст. Я предполагаю, что это как-то связано с async / await, но я не могу этого понять.
Вот код.
function Home()
{
let computers = [];
firestore.collection("computers").get().then(function(querySnapshot) {
querySnapshot.forEach(function(doc) {
let data = doc.data();
data.uid = data.id;
computers.push(data);
})
})
console.log(computers.length); // Always returns 0
return (
// Using computers.map to render every computer into its own component
);
}
export default Home;
Да, это из-за этого. Для этого вам нужно будет использовать useState. Документы: reactjs.org/docs/hooks-state.html — person crlegdn schedule 12.01.2021
