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就可以下载打开文件预览了