【发布时间】:2021-08-15 01:16:32
【问题描述】:
我有一个表单,它有一个+ ADD 按钮来动态添加另一个表单。在每个表单中,它有两个输入作为co_number,attachments 我想通过axios 将每个表单存储在 MySQL 上,以下是我尝试过但没有工作的。有没有合适的解决方案来解决这个问题?
模板
<template>
<div id="Tasks">
<v-row v-for="(i, k) in formList" :key="k">
<v-col md="1" sm="3" cols="12">
<!-- REMOVE ROW BUTTON -->
<v-btn color="red" v-if="formList.length > 1" @click="remomvePOList(k)">
<v-icon>
mdi-delete
</v-icon>
</v-btn>
<!-- ADD ROW BUTTON -->
<v-btn
color="blue"
v-if="k == formList.length - 1"
@click="addNewPO(k)"
>
<v-icon>mdi-plus</v-icon>
</v-btn>
</v-col>
<v-col md="2" sm="3" cols="12" class="">
<v-text-field v-model="i.co" label="CO Number" dense hide-details="">
</v-text-field>
</v-col>
<v-file-input
v-model="i.attachments"
multiple
label="ATTACHMENTS"
@change="onAttachmentSelected($event, k)"
>
</v-file-input>
<v-btn @click="save">SAVE</v-btn>
</v-row>
<script>
export default {
data() {
return {
formList: [{ co: "", attachments: [] }],
};
},
methods: {
addNewPO(e) {
this.formList.push({
co: "",
attachments: [],
});
},
remomvePOList(e) {
this.formList.splice(e, 1);
},
onAttachmentSelected(e, k) {
this.formList[k].attachments.push(e);
// ERROR: RangeError: Maximum call stack size exceeded"
},
save() {
// axios post request
},
},
};
</script>
【问题讨论】:
标签: javascript vue.js vuejs2 axios