From 9db0431e965bb310f6b7ffcd57940de9410666de Mon Sep 17 00:00:00 2001 From: Hykilpikonna Date: Wed, 6 Nov 2019 20:57:52 -0500 Subject: [PATCH] [O] Use caching to optimize graphs --- src/pages/overall/overall-line/overall-line.ts | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/src/pages/overall/overall-line/overall-line.ts b/src/pages/overall/overall-line/overall-line.ts index 257ae21..473cfe2 100644 --- a/src/pages/overall/overall-line/overall-line.ts +++ b/src/pages/overall/overall-line/overall-line.ts @@ -57,12 +57,17 @@ export default class OverallLine extends Vue } }; + chartCache: any; + /** * Convert assignments list to a graph dataset. */ get convertChart() { - let courses = this.courses; + // Caching + if (this.chartCache != undefined) return this.chartCache; + + let courses = this.courses.filter(c => c.assignments.length > 0); // Compute the column names let columns = courses.map(course => course.name); @@ -166,7 +171,8 @@ export default class OverallLine extends Vue rows.push(row); }); - return { + return this.chartCache = + { columns: columns, rows: rows }