需求背景
有一些文件比如
uni-app用到的api
- uni.downloadFile https://uniapp.dcloud.io/api/request/network-file?id=downloadfile
- uni.saveFile https://uniapp.dcloud.io/api/file/file?id=savefile
- uni.openDocument https://uniapp.dcloud.io/api/file/file?id=opendocument
其实把文件保存到本地的意义不是很大,因为手机跟pc端不一样,用户可以选择磁盘,选择文件去保存,手机上保存用户很难去找到这个文件,尤其 ios
,所以要实现类似需求,我们只能换一个方式去实现,我们可以从后台拿到文件,然后用户去分享给好友,然后再从pc端去下载,或者微信里面用其他软件打开之类的。
uni.downloadFile({
url: `${fileDownload}?access_token=${token}&fileId=${res.data.file_id}`, // 文件下载地址
success: response => {
if (response.statusCode === 200) {
uni.saveFile({
tempFilePath: response.tempFilePath,
success: (resData) => {
uni.openDocument({
filePath: resData.savedFilePath,
fileType: 'pdf', // 指定文件的格式
showMenu: true, // 允许出现分享功能
success: r => {
console.log(r)
},
fail: openError => {
console.log('打开失败: ', openError)
}
})
},
fail: error => {
console.log('error: ', error)
}
})
}
}
})
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/17182.html