问题描述
在 ios 系统下,若在一个网络请求的回调函数中调用 uni.chooseFile
、uni.chooseImage
等 API,那么浏览器将不会弹出文件选择框。
如以下这种情况:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
| uni.request({ url: "", method: "", success: res => { uni.chooseFile({}); } })
uni.request({ url: "", method: "" }).then(res => { uni.chooseFile({}) })
|
解决方法
可以将媒体选择 API 的调用放在一个计时器中。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
| uni.request({ url: "", method: "", success: res => { setTimeout(() => { uni.chooseFile({}) }, 100) } })
uni.request({ url: "", method: "" }).then(res => { setTimeout(() => { uni.chooseFile({}) }, 100) })
|