在承诺中完成地图之前。所有它在React JS中执行下一行
晚上好,
我只是想创建一个带有多个数据的集合,该数据与其他集合一起嵌套了用来调用其他连接,例如明智的我调用所有连接,
。
firestore.collection("pods/").where("start_date", "==", dformat)
.where("pod_status", "==", "active").get()
.then((snap: any) => {
snap.docs.map((docsnap: any) => {
let details = docsnap.data();
let pod_docId = docsnap.id;
let pod_id = details.pod_id;
let course_id = details.course_id;
getDocDetails(course_id, firestore, "courses").then(
(courseData: any) => {
let course_data = courseData.data(); let levels = course_data.levels;
Promise.all(
levels.map((lev: any) => {
let level_id = lev;
getDocDetails(level_id, firestore, "levels")
.then((level_data) => {
let result: any = level_data; let level_details = result.data();
let modules = level_details.modules;
modules.map((module_id: any) => {
getDocDetails(module_id, firestore, "modules")
.then((module_data) => {
let response: any = module_data; let mod_det = response.data(); let sess = mod_det.sessions;
sess.map((sess_id: any) => {
sessions_id_list.push(sess_id);
logger.info("sessions_id_list", sessions_id_list);
});
})
.catch((err) => {
logger.info(
"Error while getting the Module details",
err
);
});
});
logger.info("sessions_id_list 2", sessions_id_list);
})
.catch((err) => {
logger.info("Error while getting the Level details", err);
});
})
);
logger.info("sessions_id_list 3", sessions_id_list);
let obj = {
pod_docId: pod_docId,
pod_id: pod_id,
sessions_id_list: sessions_id_list,
status: "created",
count: 0,
completed: 0,
};
addQueue(obj, firestore);
}
);
});
})
.catch((err: any) => {
reject(err);
});
然后在推动会话列表之前在此处收集数据,然后执行打印会话列表3并调用Addqueue函数 我该如何克服这一点,帮助我,感谢Avance
Good Evening All,
Am just trying to create one collection with multiple data, that datas are nested with other collections am trying to call a function to get one id , that id used to call another connection and get some data and id's, that id is used to call other connection like wise i call all connection and gather the data
Here My code
firestore.collection("pods/").where("start_date", "==", dformat)
.where("pod_status", "==", "active").get()
.then((snap: any) => {
snap.docs.map((docsnap: any) => {
let details = docsnap.data();
let pod_docId = docsnap.id;
let pod_id = details.pod_id;
let course_id = details.course_id;
getDocDetails(course_id, firestore, "courses").then(
(courseData: any) => {
let course_data = courseData.data(); let levels = course_data.levels;
Promise.all(
levels.map((lev: any) => {
let level_id = lev;
getDocDetails(level_id, firestore, "levels")
.then((level_data) => {
let result: any = level_data; let level_details = result.data();
let modules = level_details.modules;
modules.map((module_id: any) => {
getDocDetails(module_id, firestore, "modules")
.then((module_data) => {
let response: any = module_data; let mod_det = response.data(); let sess = mod_det.sessions;
sess.map((sess_id: any) => {
sessions_id_list.push(sess_id);
logger.info("sessions_id_list", sessions_id_list);
});
})
.catch((err) => {
logger.info(
"Error while getting the Module details",
err
);
});
});
logger.info("sessions_id_list 2", sessions_id_list);
})
.catch((err) => {
logger.info("Error while getting the Level details", err);
});
})
);
logger.info("sessions_id_list 3", sessions_id_list);
let obj = {
pod_docId: pod_docId,
pod_id: pod_id,
sessions_id_list: sessions_id_list,
status: "created",
count: 0,
completed: 0,
};
addQueue(obj, firestore);
}
);
});
})
.catch((err: any) => {
reject(err);
});
Here before pushing the session list , it execute print session list 3 and call addQueue function. How can i overcome this, Help me guys, Thanks in Avance
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论