一、先选择文件
let that = this;
uni.chooseMessageFile({
count: 1,
success: res => {
console.log(res);
//name是自动获取到的文件名称
let name = res.tempFiles[0].name;
//获取到的文件路径
let filePath = res.tempFiles[0].path;
that.upload(name, filePath);
}
})
二、上传文件
upload(name,fileUrl){
let that = this;
uni.uploadFile({
url: 'https://jtapi.qiandaokeji.club/api/v1/upload/file',
filePath: fileUrl,
name: 'file',
header: {
"Content-Type": "multipart/form-data",
},
formData: {
"api_token": that.api_token,
},
success: res => {
console.log(res)
let url = JSON.parse(res.data).data.url;
let size = JSON.parse(res.data).data.size;
let suffix = JSON.parse(res.data).data.ext;
}
})
},
三、打开文件
preview(item){
let isImage = until.isImage(item.suffix);
if (isImage) {
let imageList = [item.url];
uni.previewImage({
current: item.url,
urls: imageList,
fail: res => {
console.log(res);
uni.showToast({
icon: "none",
title: "图片打开异常"
})
}
})
} else {
uni.showLoading({
title: "文档下载中"
})
// 文档需要先下载到本地,然后才能打开
uni.downloadFile({
url: item.url,
success: res => {
uni.hideLoading();
if (res.statusCode === 200) {
uni.openDocument({
filePath: res.tempFilePath,
fail: res => {
console.log(res);
uni.showToast({
icon: "none",
title: "文档打开异常"
})
}
})
} else {
uni.showToast({
icon: "none",
title: "文档下载异常"
})
}
},
fail: res => {
uni.hideLoading();
uni.showToast({
icon: "none",
title: "文档下载异常"
})
}
})
}
},