【问题标题】:nodejs - readline interface prompt value modificationnodejs - readline界面提示值修改
【发布时间】:2018-11-29 06:36:52
【问题描述】:

在 nodejs 中,我正在使用 readline 模块创建一个 CLI。最初我使用以下代码来启动提示

let _interface = require('readline').createInterface{
input: process.stdin,
output: process.stdout,
prompt: '>'};
_interface.prompt();
/*some operation*/
_interface.prompt();

但我正在尝试将提示图标从> 更改为$,因为用户尝试更改它。在不重新启动提示符的情况下如何做到这一点。

【问题讨论】:

  • 您希望 cli 用户能够将 > 更改为 $
  • 是的,你是对的,@Aabid
  • 用户如何更改他只需输入$ 并会更改?请详细说明您为什么要这样做。
  • 好的,让我们考虑提示是用户Welcome to CLI and in next line he has >启动的。现在他正在输入命令change --$,然后从下一行CLI 应该使用$。希望您能理解,如需更多信息,请告诉我。

标签: node.js command-line-interface


【解决方案1】:

您可以使用rl.setPrompt() 方法实现此目的。

考虑这个例子

const readline = require('readline');
const rl = readline.createInterface({
    input: process.stdin,
    output: process.stdout,
    prompt: '> '
});

rl.prompt();

rl.on('line', (line) => {
    if(line.trim()=='change --$'){
        rl.setPrompt('$');
    }
    rl.prompt();
}).on('close', () => {
    console.log('Have a great day!');
    process.exit(0);
});

我希望它对你有用。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-11-23
    • 1970-01-01
    • 1970-01-01
    • 2015-07-08
    • 1970-01-01
    • 1970-01-01
    • 2015-08-13
    相关资源
    最近更新 更多