我正在尝试在nodejs中创建一个程序,该程序可以等待用户输入,同时在屏幕上打印其他内容,而不会弄乱所有内容。
使用以下代码:
setInterval( function (){
console.log("just displaying some stuff");
},1000);
process.stdin.on("data", function(char) {
console.log(char);
});
我得到以下结果:
just displaying some stuff
just displaying some stuff
'this is' just displaying some stuff
'in'just displaying some stuff
'put'just displaying some stuff
我一直在寻找的结果是这样的:
just displaying some stuff
just displaying some stuff
just displaying some stuff
just displaying some stuff
just displaying some stuff
'this is input'
有任何想法吗?我找不到任何有用的东西。
您可以使用ncurses或其他基于文本的UI库执行类似的操作。在Node中,有一个很棒的模块blessed
,可以帮助您解决诸如此类的问题。看:
它有一些不错的演示,其中包含更复杂的用例:
在您的情况下,您可以制作一个窗口,将整个屏幕减去一行,然后在此处打印文本,同时在下面的第二个窗口中输入内容,如果需要,可以输入一行或更高。
它比简单的方法要复杂得多,console.log()
但肯定是可能的,并且不要听别人说不是。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句