- 需求:Upload组件,用post方法上传base64转码文件。
- 解决方法:用before-upload事件来获取file转换格式,并调用接口,最后return false阻止默认上传方式。
<div>
<Upload action="" :before-upload="beforeUpload">
</div>
<script>
export default {
methods: {
beforeUpload (file) {
let reader = new FileReader()
reader.readAsDataURL(file)
reader.onload = e => {
let _file = e.target.result
this.$api.post({
'data': Base64.encode(_file)
}).then( res => {
// 上传成功
})
}
return false // 阻止Upload的默认上传
},
}
}
</script>