【问题标题】:Stacked progress bars with `progress` module in NodejsNodejs中带有“progress”模块的堆叠进度条
【发布时间】:2018-12-27 22:24:52
【问题描述】:

我在 MacOS 10.10.5 上运行 progress v2.0.3 和 NodeJS v10.9.0,并尝试实现这样的堆叠进度条:

'use strict';
const ProgressBar = require('progress');


const foo = new ProgressBar('Processing [:bar] :percent :etas', { total: 100 });
let timerFoo = setInterval( () => {
  foo.tick();
  if (foo.complete) {
    clearInterval(timerFoo);
  }
}, 10);


const bar = new ProgressBar('Processing [:bar] :percent :etas', { total: 100 });
let timerBar = setInterval( () => {
  bar.tick();
  if (bar.complete) {
    clearInterval(timerBar);
  }
}, 200);

尽管在第一个进度条完成后(或者在两个都以相同的计时器间隔运行时),两个定义的进度条都有堆叠输出,但对于未完成的进度条,我无法获得此信息。如何使用progress 模块实现堆叠的进度条(总共需要四个条)?

【问题讨论】:

  • 您希望第二个小节(或者即使还有更多小节)在第一个小节完成后保持未完成状态?
  • 我想要堆叠的独立进度条。有关扩展基本 progress API 的专用模块,请参阅 my answer below

标签: node.js terminal progress-bar command-line-interface


【解决方案1】:

有一个名为 multi-progress 的专用模块扩展了 progress 模块的 API 以允许多个进度条:

此模块在progress 的 API 之上添加了一个层,允许 多个进度条。

【讨论】:

猜你喜欢
  • 2020-10-07
  • 2016-10-11
  • 1970-01-01
  • 2016-06-07
  • 2017-11-15
  • 1970-01-01
  • 1970-01-01
  • 2012-10-04
  • 2016-03-11
相关资源
最近更新 更多