From 1519c3470ceb06329cbd1a53815d4c8adeb51bfb Mon Sep 17 00:00:00 2001 From: Phil Hughes Date: Thu, 8 Nov 2018 10:42:11 +0000 Subject: Stop multiple discussion requests With multiple discussion requests we loose the reactivity of the previously stored discussions state. This means that certain features, toggling line discussions for example, are no longer reactive. --- app/assets/javascripts/notes/components/notes_app.vue | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/app/assets/javascripts/notes/components/notes_app.vue b/app/assets/javascripts/notes/components/notes_app.vue index ed5ac112dc0..e555279a6ac 100644 --- a/app/assets/javascripts/notes/components/notes_app.vue +++ b/app/assets/javascripts/notes/components/notes_app.vue @@ -50,6 +50,7 @@ export default { }, data() { return { + isFetching: false, currentFilter: null, }; }, @@ -141,6 +142,10 @@ export default { return discussion.individual_note ? { note: discussion.notes[0] } : { discussion }; }, fetchNotes() { + if (this.isFetching) return null; + + this.isFetching = true; + return this.fetchDiscussions({ path: this.getNotesDataByProp('discussionsPath') }) .then(() => { this.initPolling(); @@ -149,6 +154,7 @@ export default { this.setLoadingState(false); this.setNotesFetchedState(true); eventHub.$emit('fetchedNotesData'); + this.isFetching = false; }) .then(() => this.$nextTick()) .then(() => this.checkLocationHash()) -- cgit v1.2.1