vueform表单上传⽂件<script src="/vue-resource/1.5.1/vue-resource.min.js"></script>
<div id="app" v-cloak>
<input type="text" v-model="param.title">
<input type="text" v-model="t">
<input type="file" @change="getFile($event,'file_avatar')">
<input type="file" @change="getFile($event,'file_thumb')">
<button @click="submitForm($event)">OK</button>
</div>
<script>
new Vue({
el: '#app',
data: {
param: {
title: info.title,
content: t,
file_avatar: '',
file_thumb: '',
},
formData: new FormData(),
},
mounted: function () {
},
methods: {
getFile(event, input_file_name) {
this.formData.append(input_file_name, event.target.files[0]);
},
inputtypefile不上传文件submitForm(event) {
event.preventDefault();
for (let i in this.param) {
this.formData.append(i, this.param[i]);
}
let config = {
headers: {
'Content-Type': 'multipart/form-data'
}
};
this.$http.post('/url', this.formData, config).then(function (res) {
if (res.status === 200) {
console.log(res);
}
}).catch((error) => {
console.log(error);
});
}
},
});
</script>
单独上传⽂件:
<input class="file" name="file" type="file" accept="image/png,image/gif,image/jpeg" @change="update"/> methods: {
update(e){
let file = e.target.files[0];
let param = new FormData(); //创建form对象
param.append('file',file);//通过append向form对象添加数据
console.('file')); //FormData私有类对象,访问不到,可以通过get判断值是否传进去
let config = {
headers:{'Content-Type':'multipart/form-data'}
}; //添加请求头
this.$http.post('127.0.0.1:8081/upload',param,config)
.then(response=>{
console.log(response.data);
})
}
}
Form表单上传⽂件:
<form>
<input type="text" value="" v-model="name" placeholder="请输⼊⽤户名">
<input type="text" value="" v-model="age" placeholder="请输⼊年龄">
<input type="file" @change="getFile($event)">
<button @click="submitForm($event)">提交</button>
</form>
data: {
name: '',
age: '',
file: ''
},
methods: {
getFile(event) {
this.file = event.target.files[0];
console.log(this.file);
},
submitForm(event) {
event.preventDefault();
let formData = new FormData();
formData.append('name', this.name);
formData.append('age', this.age);
formData.append('file', this.file);
let config = {
headers: {
'Content-Type': 'multipart/form-data'
}
}
this.$http.post('127.0.0.1:8081/upload', formData, config).then(function (response) {              if (response.status === 200) {
console.log(response.data);
}
})
}
}

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。