动态添加表单功能
话不多说直接上代码
<h4>租赁物信息</h4>
<div v-for="(item, index) in formData.wBankLeaseItems" :key="item.key" class="zlw clearfix">
<el-form-item :prop="'wBankLeaseItems.'+ index +'.name'" label="租赁物名称">
<el-input v-model="item.name" />
</el-form-item>
<el-form-item :prop="'wBankLeaseItems.'+ index +'.brandId'" label="租赁物品牌">
<el-select v-model="item.brandId">
<el-option v-for="subItem in brands" :key="subItem.id" :label="subItem.name" :value="subItem.id"/>
</el-select>
</el-form-item>
<el-form-item :prop="'wBankLeaseItems.'+ index +'.fixP17'" label="型号">
<el-input v-model="item.fixP17" />
</el-form-item>
<el-form-item :prop="'wBankLeaseItems.'+ index +'.factoryTime'" label="出厂日期">
<el-date-picker
v-model="item.factoryTime"
class="filter-item"
type="datetime"
placeholder="选择出厂日期"
value-format="yyyy-MM-dd HH:mm:ss"/>
</el-form-item>
<el-form-item :prop="'wBankLeaseItems.'+ index +'.machineNum'" label="设备序列号">
<el-input v-model="item.machineNum" />
</el-form-item>
<el-form-item :prop="'wBankLeaseItems.'+ index +'.plateNum'" label="GPS序列号">
<el-input v-model="item.plateNum" />
</el-form-item>
<el-form-item label="车牌号">
<el-input v-model="item.plateCard" />
</el-form-item>
<el-form-item :prop="'wBankLeaseItems.'+ index +'.machinePrice'" label="销售单价">
<el-input v-model="item.machinePrice" >
<template slot="append">元</template>
</el-input>
</el-form-item>
<el-form-item :prop="'wBankLeaseItems.'+ index +'.machineAssess'" label="设备估价">
<el-input v-model="item.machineAssess">
<template slot="append">元</template>
</el-input>
</el-form-item>
<el-form-item label="图片" @click.native="getWBankLeaseItemsIndex(index)">
<el-upload
:action="uploadPath"
:headers="headers"
:before-upload="beforeUpload"
:on-success="uploadPicUrl"
:on-remove="handleRemove"
multiple
accept=".jpg, .jpeg, .png, .gif"
list-type="picture-card"
>
<i class="el-icon-plus avatar-uploader-icon" />
</el-upload>
</el-form-item>
<el-form-item label="操作">
<el-button :disabled="disabled" type="danger" @click="wBankLeaseItemDel(index)">删除当前租赁物</el-button>
</el-form-item>
</div>
<el-button :disabled="disabled" type="primary" class="addZlw" @click="wBankLeaseItem()">新增租赁物信息</el-button>
data里的数据
data(){
return {
formData{
wBankLeaseItems: [{ // 租赁物信息
name: undefined,
brandId: undefined,
factoryTime: undefined,
plateNum: undefined,
itemUrl: [],
machineNum: undefined,
machinePrice: undefined,
machineAssess: undefined,
key: 1
}],
wBankLeaseItemsIndex: undefined, // 记录当前上传文件租赁物下标
}
}
}
methods:
wBankLeaseItemDel(index) {
this.formData.wBankLeaseItems.splice(index, 1)
},
wBankLeaseItem() {
// 添加初始化数据
this.formData.wBankLeaseItems.push({
name: undefined,
brandId: undefined,
factoryTime: undefined,
plateNum: undefined,
itemUrl: [],
machineNum: undefined,
machinePrice: undefined,
machineAssess: undefined,
key: Date.now()
})
},