Fix autosave in noteable discussion.

This commit is contained in:
Fatih Acet 2018-07-12 00:36:14 +02:00
parent 5f7a81c441
commit 9cd5ca2f57
No known key found for this signature in database
GPG key ID: E994FE39E29B7E11
2 changed files with 16 additions and 18 deletions

View file

@ -1,12 +1,11 @@
<script>
import $ from 'jquery';
import { mapState, mapGetters, mapActions } from 'vuex';
import createFlash from '~/flash';
import { s__ } from '~/locale';
import noteForm from '../../notes/components/note_form.vue';
import { getNoteFormData } from '../store/utils';
import autosave from '../../notes/mixins/autosave';
import { DIFF_NOTE_TYPE, NOTE_TYPE } from '../constants';
import { DIFF_NOTE_TYPE } from '../constants';
export default {
components: {
@ -42,21 +41,21 @@ export default {
},
mounted() {
if (this.isLoggedIn) {
const noteableData = this.noteableData;
const keys = [
noteableData.diff_head_sha,
this.noteableData.diff_head_sha,
DIFF_NOTE_TYPE,
noteableData.source_project_id,
this.noteableData.source_project_id,
this.line.lineCode,
];
this.initAutoSave(noteableData, keys);
this.initAutoSave(this.noteableData, keys);
}
},
methods: {
...mapActions('diffs', ['cancelCommentForm']),
...mapActions(['saveNote', 'refetchDiscussionById']),
handleCancelCommentForm() {
// eslint-disable-next-line no-alert
if (!window.confirm('Are you sure you want to cancel creating this comment?')) {
return;
}

View file

@ -144,19 +144,17 @@ export default {
return this.isDiffDiscussion ? '' : 'card discussion-wrapper';
},
},
mounted() {
watch: {
isReplying() {
if (this.isReplying) {
this.initAutoSave(this.transformedDiscussion);
this.$nextTick(() => {
// Pass an extra key to separate reply and note edit forms
this.initAutoSave(this.transformedDiscussion, ['Reply']);
});
} else {
this.autosave.dispose();
}
},
updated() {
if (this.isReplying) {
if (!this.autosave) {
this.initAutoSave(this.transformedDiscussion);
} else {
this.setAutoSave();
}
}
},
created() {
this.resolveDiscussionsSvg = resolveDiscussionsSvg;
@ -420,7 +418,8 @@ Please check your network connection and try again.`;
:is-editing="false"
save-button-title="Comment"
@handleFormUpdate="saveReply"
@cancelForm="cancelReplyForm" />
@cancelForm="cancelReplyForm"
/>
<note-signed-out-widget v-if="!canReply" />
</div>
</div>