angular - 如何在上传文件时添加进度条

标签 angular ionic2

我正在将文件传输到一个网址,我可以成功完成,但我不知道如何获取已上传文件的进度,我需要获取一些数字的进度

 fileTransfer.upload(file_path, api_endpoint, options, data)
                                .then((data) => {
                                    // success 
                                     console.log("success", JSON.parse(data['response']));

                                    this.upload_success();

                                }, (err) => {
                                    // error 
                                    this.failed_upload();
                                    console.log('File failed uploaded.', err);
                                })

我发现 onProgress(Listener) check在 ionic2 文档中,我不知道如何使用,有人可以给我一些例子

已更新 浏览完文档后https://github.com/apache/cordova-plugin-file-transfer#example-with-upload-headers-and-progress-events-android-and-ios-only

fileTransfer.onProgress = function(progressEvent) {
    if (progressEvent) {
        console.log("progress success =====")
    } else {
        console.log("progress error =====")
    }
};     

如果我运行,我看不到任何控制台,我在文件传输代码下面添加了这个新代码。有人可以帮我吗

最佳答案

您可以使用这样的 onProgress 函数显示进度条

public   fileTransfer: TransferObject = this.transfer.create();
public upload(path,folder) 
{
  url="http://www.axmag.com/download/pdfurl-guide.pdf";
  var trustHosts = true;
  this.presentLoading("Loading");
  //**Progress Bar**
  this.fileTransfer.onProgress((e)=>
  {
    let prg=(e.lengthComputable) ?  Math.round(e.loaded / e.total * 100) : -1;  
    console.log("progress:"+prg);
  });

  this.fileTransfer.upload(file_path, api_endpoint, options, data).then((entry) => {
//handle success        
console.log('upload complete: ' );
  },
  (error) => {
    this.loader.dismiss();
    alert('uploading faild: ');
    console.log(error);
  //handle error
  });
}

现在你可以调用upload()函数来上传文件了

关于angular - 如何在上传文件时添加进度条,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42784079/

相关文章:

angular - 无法使用 WSL 在 Angular 项目中启动 ChromeHeadless,适用于 Mac

javascript - 如何防止用户在 Angular 2 的文本框中粘贴错误的值?

Angular - 在路由器事件中获取组件实例

angular - ionic v3 中的自定义组件

java - 尝试从 Angular 向 Spring Boot API 插入数据时出现 "JSON parse error: Cannot construct instance of"错误

javascript - RXJS Observable 数组的简单过滤器

javascript - 自定义管道未正确导入

ionic-framework - ionic : livereload not working after including custom webpack. config.js

angular - 全局添加 header 和超时请求

javascript - epubjs中无法从epub加载资源