<div style="text-align: center">
<el-upload
ref="upload"
class="upload-demo"
drag
action="/"
accept=".xlsx"
:limit="2"
:auto-upload='false'
:file-list="fileList"
:before-upload="beforeUpload"
:http-request="handleUploadCrow"
:on-remove="handleRemove"
:on-change="onChange"
>
<i class="el-icon-upload" />
<div class="el-upload__text">
将文件拖到此处,或<em>点击上传</em>
</div>
<div slot="tip" class="el-upload__tip">
1.仅支持导入xls/xlsx格式的文件
</div>
<div slot="tip" class="el-upload__tip">
2.导入文件后需要和系统做匹配,找出已注册会员,这部分会员将作为您的优惠券投放人群
</div>
</el-upload>
<div style="margin-top: 18px">
<el-button type="primary" @click="uploadFile">确 定</el-button>
<el-button @click="dialogImportVisible = false">取 消</el-button>
</div>
</div>
limit设置上传限制2个,然后判断onchang的fileList长度实现替换
>
/**
* 上传文件前验证格式
*/ beforeUpload(file) {
console.log(file)
const typeArr = [
'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet',
'application/vnd.ms-excel',
]
if (typeArr.indexOf(file.type) === -1) {
this.$message.error('请上传格式为 .xls或.xlsx 的文件')
return false
}
},
/**
* 上传确定
*/
handleUploadCrow(event) {
console.log(event)
adjustImpor({ file: event.file,type:this.formData.type })
.then((res) => {
console.log(res)
this.formData.pointAdjustList = res.data.pointAdjustList
this.formData.pointSum = res.data.pointNumSum
this.formData.customerSum = res.data.customerSum
this.custNum = res.data.success
})
.catch((err) => {
console.log(err)
})
},
/**
* 移除文件
*/
handleRemove() {
this.$set(this.fileList, this.fileList, '')
},
/**
* 确定上传
*/ uploadFile() {
this.$refs.upload.submit()
this.dialogImportVisible = false
},
/**
* 文件覆盖
*/
onChange(file, fileList) {
console.log(file,fileList)
if (fileList.length > 1) {
fileList.splice(0, 1);
}
},