formdata传递参数_使用formData传递数组·

formData其实就相当于是个表单,平常我们创建表单需要通过标签,而我们使用formData就可以直接创建一个表单,因为我们需求中还得有上传文件的操作,所以我们使用formData来给后台传递数据。

我这边业务需求是点击保存时,会将表单和文件一起上传给后台,并且还是个数组,因为有多个IP地址。

image.png

后台要求的数据格式,有几个IP数组中就有几个对象

image.png

父组件使用ref获取upload组件方法, 这块还有一点需要注意,因为我的upload是在v-for循环下面,所以我们获得真实节点时也是一个数组,需要遍历取一下。

const {domains,taskData} = this.form

const formdata = new FormData()

this.$refs.Upload.map((item,index) => {

item.benchmark(domains,taskData,index,formdata)

})

this.$axios.post('/update/upload_benchmark/',formdata,config).then(res => {

const {code,msg} = res.data

if(code === 0){

this.$message({

message: '保存成功',

type: 'success'

});

}else{

this.$message.error(msg)

}

})

upload组件中的方法

benchmark(targets, taskData, index, formdata) {

formdata.append(`targets[${index}][target]`, targets[index].value)

formdata.append(`targets[${index}][task_type]`, taskData)

formdata.append(`targets[${index}][benchmark_file]`, this.upFileList[0])

if (!this.upFileList[0]) {

this.$message.error('请上传文件')

return

}

},

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值