【发布时间】:2021-08-25 21:19:15
【问题描述】:
我想在按钮单击时检查输入是否为空。如果其中一个输入为空,我正在过滤一个数组。我正在尝试将错误添加到数组中以查找错误,我的任务是我只需要为那些为空的输入添加错误,但问题是即使对于那些不为空的输入也会添加错误。
<template>
<form>
<div v-for="(learning, i) in general.learnings" :key="i">
<input
type="text"
v-model="general.learnings[i]"
maxlength="120"
/>
</div>
<p
style="background: red"
v-for="(i, index) in errorList"
:key="'A' + index"
>
{{ i }}
</p>
<button @click="save">Save</button>
</form>
</template>
<script>
export default {
methods: {
save(e) {
this.general.learnings.filter((e, index) => {
if (!e[index]) {
this.errorList.push("Error")
} else if (e[index] !== "") {
this.errorList = [""];
}
});
e.preventDefault();
},
},
data() {
return {
errorList: [],
general: {
learnings: ["", ""],
},
};
},
};
</script>
我认为问题出在this.errorList.push("Error")你可以看看这个code in codesandbox你可以在输入中写一些东西按下删除后按下按钮然后再次按下你会看到一切都很好,我会很高兴如果有帮助
【问题讨论】:
标签: javascript arrays vue.js validation