vue2 input使用axios传递多个参数,包括file类型
时间: 2024-03-24 18:38:46 浏览: 14
您可以通过FormData对象将多个参数(包括文件)一起发送给后端。以下是一个使用axios和FormData对象发送多个参数的示例代码:
```
<template>
<div>
<input type="text" v-model="name">
<input type="file" @change="onFileChange">
<button @click="submit">提交</button>
</div>
</template>
<script>
import axios from 'axios'
export default {
data () {
return {
name: '',
file: null
}
},
methods: {
onFileChange (event) {
this.file = event.target.files[0]
},
submit () {
const formData = new FormData()
formData.append('name', this.name)
formData.append('file', this.file)
axios.post('/api/submit', formData)
.then(response => {
console.log(response.data)
})
}
}
}
</script>
```
在这个示例中,我们创建了一个包含'name'和'file'两个参数的FormData对象,并将其作为第二个参数传递给axios.post()方法。在onFileChange()方法中,我们将选择的文件保存在组件的数据中,并在submit()方法中将其添加到FormData对象中。