收藏
回答

wx.download返回的DownloadTask监听进度条没有success回调执行快?

wx.download

DownloadTask

微信版本:8.0.1

每次下载DownloadTask.onProgressUpdate返回的进度,走到30或者10几,wx.download中的success回调就执行了。

还有DownloadTask.onProgressUpdate中的进度,经常从30忽然跳到0,再走一遍,反复跳

回答关注问题邀请回答
收藏

2 个回答

  • 社区技术运营专员--阳光
    社区技术运营专员--阳光
    2021-08-09

    请具体描述问题出现的流程,并提供能复现问题的简单代码片段(https://developers.weixin.qq.com/miniprogram/dev/devtools/minicode.html)。

    2021-08-09
    有用
    回复
  • 雷梓阳
    雷梓阳
    2021-09-28

    每次下载DownloadTask.onProgressUpdate返回的进度,走到30或者10几,wx.download中的success回调就执行了。

    这个问题是因为控制台窗口打印速度不够快导致的

    2021-09-28
    有用
    回复 2
    • 雷梓阳
      雷梓阳
      2021-09-28
      你得用setTimeout控制一下监听的频率
      2021-09-28
      回复
    • 雷梓阳
      雷梓阳
      2021-09-28
      function repeatCheck(){
                    setTimeout(() => {
                      uploadTask.onProgressUpdate(res=>{
                        console.log('上传进度', res.progress)
                        console.log('已经上传的数据长度', res.totalBytesWritten)
                        console.log('预期需要上传的数据总长度', res.totalBytesExpectedToWrite)
                        downloadTask.offProgressUpdate()
                        repeatCheck()
                        wx.showLoading({
                          title: '上传进度'+res.progress+"%",
                        })
                      })
                    }, 1000)
                  }
                  repeatCheck()
      2021-09-28
      1
      回复
登录 后发表内容