[F] Fix vue update problem

This commit is contained in:
Hykilpikonna
2019-12-21 19:45:08 -05:00
parent 3e6caab023
commit 3425894c24
@@ -1,14 +1,14 @@
<template> <template>
<div id="overall-course"> <div id="overall-course">
<el-card class="course-card"> <el-card class="course-card">
<course-head :clickable="true" :course="course" :unread="unread"/> <course-head :clickable="true" :course="course" :unread="unread()"/>
<div class="course-card-content expand" <div class="course-card-content expand"
v-if="unread !== 0"> v-if="unread() !== 0">
<assignment-entry v-for="assignment in unreadAssignments" <assignment-entry v-for="assignment in unreadAssignments()"
:assignment="assignment" :assignment="assignment"
:key="assignment.id" :key="assignment.id"
unread="true" unread="true"
v-on:mark-as-read="assignment.markAsRead()"> v-on:mark-as-read="markAsRead(assignment)">
</assignment-entry> </assignment-entry>
</div> </div>
</el-card> </el-card>
@@ -28,14 +28,19 @@
{ {
@Prop({required: true}) course: Course; @Prop({required: true}) course: Course;
get unreadAssignments(): Assignment[] unreadAssignments(): Assignment[]
{ {
return this.course.assignments.filter(a => a.unread); return this.course.assignments.filter(a => a.unread);
} }
get unread(): number unread(): number
{ {
return this.unreadAssignments.length; return this.unreadAssignments().length;
}
markAsRead(assignment: Assignment)
{
assignment.markAsRead().then(() => this.$forceUpdate()).catch(alert);
} }
} }
</script> </script>