function saveFile(url, item, field) {
return new Promise((resolve, reject) => {
uni.downloadFile({
url,
success: ({
tempFilePath,
statusCode
}) => {
if (statusCode === 200) {
uni.saveFile({
tempFilePath,
success: ({
savedFilePath
}) => {
if (item && field) {
item[field] = savedFilePath
}
resolve(savedFilePath)
}
})
} else {
reject('保存失败')
}
},
fail: (err) => {
reject('下载失败')
}
})
})
}
- 发布:2022-10-17 15:28
- 更新:2022-10-17 15:32
- 阅读:226
产品分类: uniapp/App
PC开发环境操作系统: Windows
PC开发环境操作系统版本号: 10企业版
HBuilderX类型: 正式
HBuilderX版本号: 3.6.4
手机系统: Android
手机系统版本号: Android 10
手机机型: 台电 T40 5G
页面类型: vue
vue版本: vue2
打包方式: 离线
项目创建方式: HBuilderX
示例代码:
操作步骤:
进入app启动,下载资源文件,文件下载过程中页面卡顿
进入app启动,下载资源文件,文件下载过程中页面卡顿
预期结果:
文件下载过程中,页面流畅
文件下载过程中,页面流畅
实际结果:
文件下载过程中,页面卡顿
文件下载过程中,页面卡顿
bug描述:
uni.downloadFile下载文件造成界面卡死,下载完成后页面恢复流畅
1 个回复
8***@qq.com (作者) - 前端
下载的文件大的1.7M,小的十几k,都卡