如何从Angular前端获取后端数据进度?

时间:2018-12-30 08:08:28

标签: java angular spring spring-boot progress-bar

我在Mongo上有一个Java Spring Boot后端。 API调用一个服务类,该服务类创建多个pdf文件并将其放入zip文件中,然后发送回Controller层。我们通过从Angular前端引发API调用来从Controller中获得该zip文件。

我想跟踪pdf生成的进度(例如,每100个中的2个完成)。有什么办法可以做到这一点?我想在前端显示某种进度条。

1 个答案:

答案 0 :(得分:1)

您可以使用数据库来实现。

  • 生成PDF的服务可以连续(或在某些时候)更新跟踪器数据库表。 (您可以进入更多详细信息,例如文件名,文件大小或花费的时间)
  • 虽然您的Angular应用可以启用一个或多个进度条并通过访问数据库进行更新

打字稿

    this.interval = setInterval(() => {
      // access a database and update the progress bar
    }, 1000);
// After you are done: clearInterval(this.interval);

HTML

<div class="progress">
 <div class="progress-bar" role="progressbar" [style.width]="percentDone + '%'" aria-valuenow="0" aria-valuemin="0" aria-valuemax="100">
    {{ percentDone }}%
</div></div>