api:
const filetype = e.substr(e.lastIndexOf('.')+1)//获取文件地址的类型
console.log('文档',filetype)
uni.downloadFile({url: e,//e是图片地址success(res) {console.log(res)if (res.statusCode === 200) {console.log('下载成功',);var filePath = encodeURI(res.tempFilePath);//这里直接复制不用改值uni.openDocument({filePath: encodeURI(filePath),fileType: filetype,//这样文件地址是什么类型,api打开的就是什么类型了,前提是uni.openDocument支持的类型showMenu: true,success: function(res) {console.log('打开文档成功');},fail(e) {console.log('打开失败',e)}});} else {console.log('下载失败');}}});
encodeURI的作用:
encodeURI函数将URI中的特殊字符转换为它们的UTF-8编码表示形式,以确保它们在传输和处理过程中不会被误解或错误解析。这样可以避免因特殊字符导致的错误或安全问题。
源码:
运行效果:
点击文件1就可以下载打开文件预览了