<template>
<el-upload
ref="uploadDemo"
:action="uploadAction"
:before-upload="beforeUpload">
<el-button
size="mini"
type="primary"
class="upload-btn" >
上传
</el-button>
</el-upload>
</template>
<script>
export default {
name: 'upload',
data () {
return {
uploadAction: this.$api.common.uploadFileUrl
}
},
methods: {
// 上传之前,根据页面逻辑动态设置上传的接口路径
beforeUpload () {
return new Promise((resolve, reject) => {
//根据页面逻辑动态设置上传路径
_self.actionUrl = _self.apiPath + _self.$api.common.uploadFileUrl;
if (_self.isNeedWater) {
_self.actionUrl = _self.apiPath + _self.$api.common.uploadFileHasWaterUrl;
}
if (_self.$utils.isNotEmpty(_self.relationId) && _self.asyncUpdate) {
_self.actionUrl = _self.apiPath + _self.$api.common.uploadEditFileUrl
}
});
}
}
}
</script>
根据相同的原理,可以在上传前,根据当前业务逻辑,对上传路径、参数等进行处理,增加或修改值上传。