关于批量上传处理
multipleUpload(data) {
var that = this; // 改变this指向
function callPromise(data) {
return new Promise((resolve, reject) => {
//上传函数
multiUpload(data).then(res => {
if (res.data) {
res.data.forEach((item) => {
const { fileName, id } = item;
//这里是每个上传需要处理的事
that.fileList.push({ fileId: id, fileName });
});
}
resolve(data);
});
});
}
const result = data.reduce((accumulatorPromise, next) => {
return accumulatorPromise.then(() => { // 上一个接口执行完毕再执行下一个
return callPromise(next);
});
}, Promise.resolve());
result.then(e => {
this.spinning = false;
//这里是所有上传完处理的事
this.$message.success('上传成功');
uploadNum = 0;
});
},