Я создаю приложение, используя реакционную систему и firestore.Вот кусок моего кода;
getData(mat){
let count = 0;
let val;
db.collection("Yemek").doc("Materials").collection(mat).get().then((querySnapshot) => {
querySnapshot.forEach((doc) => {
count++;
val = doc.data().value;
matKey = mat+count.toString();
this.state.array.push([
meal=mat, value=val, status=false, key=matKey
]);
});
}).catch(err => {
console.log('Error getting documents', err);
return false;
});
}
componentWillMount(){
this.getData('vegetables');
this.getData('legumes');
this.getData('meat');
this.getData('milk');
this.getData('others');
}
render() {
return (//Render components)}
Я рендеринг компонентов с массивом, находящимся в состоянии.Но это возвращает ноль, потому что компоненты рендеринга приложения до завершения запроса.Я искал вчера.Я думаю, что я должен использовать обещания, но я не понял этого.Не могли бы вы помочь мне?