fix(upload):修复文件上传逻辑并统一接口路径

- 将上传接口路径从 /file/upload 统一修改为 /common/upload
-优化文件上传成功回调处理逻辑
- 增强上传失败时的错误提示- 修复图片删除时的索引查找逻辑- 移除调试用的 console.log 输出
- 完善文件列表更新逻辑
master
zangch@mesnac.com 1 month ago
parent d8a4c21ca5
commit ae209ea090

@ -480,7 +480,7 @@ export default {
}, },
// //
uploadUrl: process.env.VUE_APP_BASE_API + '/file/upload', uploadUrl: process.env.VUE_APP_BASE_API + '/common/upload',
uploadHeaders: { uploadHeaders: {
Authorization: 'Bearer ' + getToken() Authorization: 'Bearer ' + getToken()
}, },
@ -687,13 +687,16 @@ export default {
/** 文件上传成功 */ /** 文件上传成功 */
handleUploadSuccess(res, file) { handleUploadSuccess(res, file) {
if (res.code === 200) { if (!res || res.code !== 200) {
this.recordForm.fileList.push({ this.$message.error((res && res.msg) || '上传失败')
name: file.name, return
url: process.env.VUE_APP_BASE_API + res.imgUrl,
filePath: res.data.url
})
} }
this.recordForm.fileList.push({
name: res.originalFilename || file.name,
url: res.url,
filePath: res.fileName || res.url
})
}, },
/** 文件移除 */ /** 文件移除 */

@ -157,7 +157,7 @@
<el-form-item label="备注" prop="remark"> <el-form-item label="备注" prop="remark">
<el-input v-model="form.remark" type="textarea" placeholder="请输入内容" /> <el-input v-model="form.remark" type="textarea" placeholder="请输入内容" />
</el-form-item> </el-form-item>
<!-- <el-form-item prop="pictureUrl"> <!-- <el-form-item label="附件上传" prop="pictureUrl">
<el-upload <el-upload
:action="imgUpload.url" :action="imgUpload.url"
:headers="imgUpload.headers" :headers="imgUpload.headers"
@ -206,8 +206,8 @@ export default {
Authorization: "Bearer " + getToken() Authorization: "Bearer " + getToken()
}, },
// : // :
url: process.env.VUE_APP_BASE_API + "/file/upload", url: process.env.VUE_APP_BASE_API + "/common/upload",
url2: process.env.VUE_APP_BASE_API, baseUrl: process.env.VUE_APP_BASE_API
}, },
imgAddress:[], imgAddress:[],
// //
@ -288,10 +288,10 @@ export default {
// //
handleRemove(file, fileList) { handleRemove(file, fileList) {
const url = file.url; const url = file.url;
console.log(url); const index = this.imgAddress.findIndex((x) => x === url);
const i = this.imgAddress.findIndex((x)=> x.url === url); if (index > -1) {
this.imgAddress.splice(i,1); this.imgAddress.splice(index, 1);
console.log(this.imgAddress) }
//filefileListPut //filefileListPut
if(this.fileListPut.length > 0){ if(this.fileListPut.length > 0){
this.fileListPut = this.fileListPut.filter((item, index)=>{ this.fileListPut = this.fileListPut.filter((item, index)=>{
@ -306,17 +306,17 @@ export default {
}, },
// //
handlePictureSuccess(res, file) { handlePictureSuccess(res, file) {
//访 if (!res || res.code !== 200) {
const imgObjectUrl = this.imgUpload.url2 + file.response.imgUrl; this.$message.error((res && res.msg) || "上传失败");
//JSON return;
let currentFile = { name: '', url: '' }; }
currentFile.name = file.name; const imgUrl = res.url;
currentFile.url = imgObjectUrl; const currentFile = {
this.imgAddress.push(res.data.url); name: res.originalFilename || file.name,
// url: imgUrl
};
this.imgAddress.push(res.url);
this.fileListPut.push(currentFile); this.fileListPut.push(currentFile);
console.log(this.fileListPut)
console.log(this.imgAddress)
}, },

Loading…
Cancel
Save