Fix continuous input bug
This commit is contained in:
parent
d46d0dde0a
commit
0080dfe0d7
File diff suppressed because it is too large
Load Diff
|
|
@ -58,7 +58,8 @@
|
|||
</div>
|
||||
</template>
|
||||
<template v-if="!isStudent">
|
||||
<router-link class="button" :to="{name: 'submissions', params: { id: assignment.id }}">Zu den Ergebnissen</router-link>
|
||||
<router-link class="button" :to="{name: 'submissions', params: { id: assignment.id }}">Zu den Ergebnissen
|
||||
</router-link>
|
||||
</template>
|
||||
</div>
|
||||
</template>
|
||||
|
|
@ -99,7 +100,8 @@
|
|||
},
|
||||
|
||||
methods: {
|
||||
_save: debounce(function () {
|
||||
_save: debounce(function (submission) {
|
||||
this.saving++;
|
||||
this.$apollo.mutate({
|
||||
mutation: UPDATE_ASSIGNMENT_MUTATION_WITH_SUCCESS,
|
||||
variables: {
|
||||
|
|
@ -119,15 +121,22 @@
|
|||
id: updatedAssignment.id
|
||||
};
|
||||
const data = store.readQuery({query, variables});
|
||||
data.assignment = Object.assign({}, updatedAssignment);
|
||||
|
||||
data.assignment = Object.assign({}, updatedAssignment, {
|
||||
submission
|
||||
});
|
||||
store.writeQuery({query, variables, data});
|
||||
}
|
||||
} catch (e) {
|
||||
console.error(e);
|
||||
// Query did not exist in the cache, and apollo throws a generic Error. Do nothing
|
||||
}
|
||||
}
|
||||
}).then(() => {
|
||||
this.unsaved = false;
|
||||
this.saving--;
|
||||
if (this.saving === 0) {
|
||||
this.unsaved = false;
|
||||
}
|
||||
});
|
||||
}, 500),
|
||||
saveInput: function (answer) {
|
||||
|
|
@ -137,11 +146,11 @@
|
|||
the updated entity, to prevent the UI to update when the user is entering his input
|
||||
*/
|
||||
this.assignment.submission.text = answer;
|
||||
this._save();
|
||||
this._save(this.assignment.submission);
|
||||
},
|
||||
changeDocumentUrl(documentUrl) {
|
||||
this.assignment.submission.document = documentUrl;
|
||||
this._save();
|
||||
this._save(this.assignment.submission);
|
||||
},
|
||||
turnIn() {
|
||||
this.$apollo.mutate({
|
||||
|
|
@ -194,7 +203,8 @@
|
|||
permissions: []
|
||||
},
|
||||
inputType: 'text',
|
||||
unsaved: false
|
||||
unsaved: false,
|
||||
saving: 0
|
||||
}
|
||||
},
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue