perf: parallelize independent requests in daka detail page
Use Promise.all for user group queries, comment loading, and resource note group fetching. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
@@ -248,8 +248,10 @@ export default defineComponent({
|
||||
session.write("DAKA", await prepare())
|
||||
startTimer(() => store.current, check_tasks)
|
||||
}
|
||||
await usingUserGroup.query("mine");
|
||||
await usingUserGroup.query("assigned");
|
||||
await Promise.all([
|
||||
usingUserGroup.query("mine"),
|
||||
usingUserGroup.query("assigned")
|
||||
]);
|
||||
ready.value = true
|
||||
})
|
||||
|
||||
|
||||
+6
-6
@@ -133,15 +133,13 @@ export default function useDaka() {
|
||||
|
||||
|
||||
async function get_qs_resource_note_groups() {
|
||||
for (let i = 0; i < store.current.course_sections.length; i++) {
|
||||
let qs = store.current.course_sections[i]
|
||||
await Promise.all(store.current.course_sections.map(async (qs) => {
|
||||
if (!qs.resource_note_group) {
|
||||
await get_resource_note_group(qs)
|
||||
} else {
|
||||
// we need to set comments to global state by check_comments_tasks function
|
||||
await check_resource_notes_task(qs.resource_note_group)
|
||||
}
|
||||
}
|
||||
}))
|
||||
}
|
||||
|
||||
async function check_tasks() {
|
||||
@@ -179,8 +177,10 @@ export default function useDaka() {
|
||||
if (r) {
|
||||
convert(d);
|
||||
store.current = {...d, end_date: getEndDate(d)};
|
||||
await load_comments(id);
|
||||
await get_qs_resource_note_groups();
|
||||
await Promise.all([
|
||||
load_comments(id),
|
||||
get_qs_resource_note_groups()
|
||||
]);
|
||||
} else {
|
||||
reset()
|
||||
showFailToast(e);
|
||||
|
||||
Reference in New Issue
Block a user