UploadTask.onProgressUpdate

2020-08-20 17:53 更新

解釋:監(jiān)聽上傳進(jìn)度變化事件,在上傳的過程中會被多次觸發(fā)。

方法參數(shù)

Function callback

callback 返回參數(shù)說明

參數(shù) 類型 說明

progress

Number

上傳進(jìn)度百分比

totalBytesSent

Number

已經(jīng)上傳的數(shù)據(jù)長度,單位 Bytes 。

totalBytesExpectedToSend

Number

預(yù)期需要上傳的數(shù)據(jù)總長度,單位 Bytes 。

示例 

在開發(fā)者工具中打開


圖片示例



代碼示例

<view class="card-area">
    <view class="title">已經(jīng)上傳的數(shù)據(jù)長度:{{alreadyData}} Bytes</view>
    <view class="title">預(yù)計上傳的數(shù)據(jù)長度:{{targetData}} Bytes</view>
    <view class="title">
        <progress class="progress" percent="{{progress}}" activeColor="#3c76ff" show-info />
    </view>
</view>
<button type="primary" bind:tap="uploadTaskProgress">點擊上傳和獲取上傳進(jìn)度</button>
Page({
    data: { 
        alreadyData: 0,
        targetData: 0
    },
    uploadTaskProgress() {
        swan.chooseImage({
            success: res => {
                const uploadTask = swan.uploadFile({
                    url: 'https://smartprogram.baidu.com/mappconsole/api/checkFile', // 開發(fā)者服務(wù)器 url
                    filePath: res.tempFilePaths[0], // 要上傳文件資源的路徑
                    name: 'myfile',
                    header: {
                        'content-type': 'application/json'
                    },
                    formData: {
                        'user': 'swan'
                    },
                    success: res => {
                        console.log(res.statusCode);
                    },
                    fail: err => {
                        console.log('錯誤碼:' + err.errCode);
                        console.log('錯誤信息:' + err.errMsg);
                    }
                });
                uploadTask.onProgressUpdate(res => {
                    console.log('上傳進(jìn)度', res.progress);
                    this.setData({
                        'progress': res.progress,
                        'alreadyData': res.totalBytesSent,
                        'targetData': res.totalBytesExpectedToSend
                    })
                    console.log('已經(jīng)上傳的數(shù)據(jù)長度', res.totalBytesSent);
                    console.log('預(yù)期需要上傳的數(shù)據(jù)總長度', res.totalBytesExpectedToSend);
                });
            }
        })
    }
});


以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號