Shows error if response returns an error
Added validation so the user shouldnt be able to submit the form without the title present
This commit is contained in:
parent
a68f1fdd29
commit
2f53a8d08f
2 changed files with 22 additions and 2 deletions
|
@ -8,7 +8,8 @@
|
|||
},
|
||||
data() {
|
||||
return {
|
||||
title: ''
|
||||
title: '',
|
||||
error: false
|
||||
};
|
||||
},
|
||||
watch: {
|
||||
|
@ -19,6 +20,10 @@
|
|||
methods: {
|
||||
submit(e) {
|
||||
e.preventDefault();
|
||||
if (this.title.trim() === '') return;
|
||||
|
||||
this.error = false;
|
||||
|
||||
const labels = this.list.label ? [this.list.label] : [];
|
||||
const issue = new ListIssue({
|
||||
title: this.title,
|
||||
|
@ -26,9 +31,21 @@
|
|||
});
|
||||
|
||||
this.list.newIssue(issue)
|
||||
.then(() => {
|
||||
.then((data) => {
|
||||
// Need this because our jQuery very kindly disables buttons on ALL form submissions
|
||||
$(this.$els.submitButton).enable();
|
||||
})
|
||||
.catch(() => {
|
||||
// Need this because our jQuery very kindly disables buttons on ALL form submissions
|
||||
$(this.$els.submitButton).enable();
|
||||
|
||||
// Remove issue with no ID
|
||||
const issue = this.list.findIssue(undefined);
|
||||
this.list.removeIssue(issue);
|
||||
|
||||
// Show error message
|
||||
this.error = true;
|
||||
this.showIssueForm = true;
|
||||
});
|
||||
|
||||
this.cancel();
|
||||
|
|
|
@ -46,6 +46,9 @@
|
|||
"v-show" => "list.type !== 'done' && showIssueForm" }
|
||||
.card.board-new-issue-form
|
||||
%form{ "@submit" => "submit($event)" }
|
||||
.flash-container{ "v-if" => "error" }
|
||||
.flash-alert
|
||||
An error occured. Please try again.
|
||||
%label.label-light{ ":for" => "list.id + '-title'" }
|
||||
Title
|
||||
%input.form-control{ type: "text",
|
||||
|
|
Loading…
Reference in a new issue