<!-- 上传 -->
<van-uploader :headers="getHeaders" :before-read="beforeRead" @before-delete="beforeDelete" @delete="deleteImg" v-model="fileList" multiple :after-read="afterRead" :max-count="6" />
private fileListAll: any[] = []
private getHeaders() {
return {
token: this.$store.state.system.token
}
}
private beforeRead(file) {
console.log('上传前', file)
file.headers = this.getHeaders()
return true
}
private async afterRead(file) {
this.fileListAll = []
// this.imgbase64str = file.content
// debugger
let formData = new FormData()
formData.append('file', file.file)
let res = await contractImages(formData)
this.fileArr.push({ img: res.imgUrl, fileName: file.file.name })
// 添加
this.fileArr.forEach((item) => {
this.fileListAll.push(item.img)
})
console.log('上传后图片数组', this.fileListAll)
// debugger
}
private beforeRead(file) {
console.log('上传前', file)
file.headers = this.getHeaders()
return true
}
private beforeDelete(file) {
// 这里的file就是要删除的文件对象,可以进行相应的操作
}
private async deleteImg(file) {
console.log('filessss', file)
let res = await contractDeleteImages({ imgName: file.file.name })
this.fileArr = this.fileArr.filter((item) => {
return item.fileName != file.file.name
})
this.fileListAll = []
this.fileArr.forEach((item) => {
this.fileListAll.push(item.img)
})
console.log('删除后图片数组', this.fileListAll)
}