我希望在控制台上显示两行数据。我只想每次更新这两行。
到目前为止,我所做的是 -
var _logInline = function(alpha, bravo) {
process.stdout.cursorTo(0, 0);
process.stdout.clearLine();
process.stdout.cursorTo(0);
process.stdout.write(alpha.toString());
process.stdout.write('\n');
process.stdout.clearLine();
process.stdout.cursorTo(0);
process.stdout.write(bravo.toString());
process.stdout.write('\n');
};
var delay = 1000;
var time = 0;
setInterval(function() {
time++;
_logInline('alpha-' + time, 'bravo-' + time * time);
}, delay);
这种解决方案的明显问题是,光标会跑到窗口顶部。我不想要那样,相反,它应该在光标所在位置显示内容。可能需要先获取逻辑中的当前光标位置。有没有一种方法可以做到这一点?
替代方案并且最优选的方案是获取一个能够执行同样任务的库。
编辑:我在stackoverflow上看到了一些问题,它们提供了在没有换行符的情况下记录日志的选项,但这不完全是我想要的。我想要多个无换行符的记录。
cursorTo(0, 0)
)。 - Fabien Sa