首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用inquirer.prompt为输入添加前缀

如何使用inquirer.prompt为输入添加前缀
EN

Stack Overflow用户
提问于 2015-05-15 07:26:31
回答 1查看 1.3K关注 0票数 2

考虑到以下几点...

代码语言:javascript
复制
var prompts = [{
    type: 'input',
    name: 'message',
    default: 'Some Message'
    message: 'Commit message?',
}]
require('inquirer').prompt(prompts, function(){})

终端将输出以下内容

代码语言:javascript
复制
[?] Commit message? (Some Message) ||

"||“符号表示我的光标

如果我按ENTER键,没有输入任何内容,inquirer将使用(一些消息)作为默认输入值。

然而,如果我输入任何东西,“一些消息会被覆盖”

我想做以下几件事

代码语言:javascript
复制
[?] Commit message? || Some Message

"||“符号表示我的光标

基本上,我想修改默认消息,或者在输入值前面加上前缀,这样我就可以修改前缀了。

我的最佳解决方案..。下面是不起作用的代码

代码语言:javascript
复制
var prompts = [{
    type: 'input',
    name: 'message',
    message: 'Commit message?',
    when: function(){
        process.nextTick(function(){
           process.stdout.write('Some Message');
        });
    }
}]
require('inquirer').prompt(prompts, function(){})

这将执行以下操作

代码语言:javascript
复制
[?] Commit message? Some Message ||

"||“符号表示我的光标

这似乎可以工作,但我不能向后移动我的光标来修改消息。

是否可以将可修改的字符串打印到终端?

EN

回答 1

Stack Overflow用户

发布于 2015-07-17 12:21:39

这是实现这一目标的一种方法:

代码语言:javascript
复制
var Inquirer = require("inquirer");

var chalk = require("chalk");


Inquirer.prompt([
  {
    type: "input",
    message: "Commit message? " + chalk.cyan( "Some Message" ),
    name: "message",
    filter: function(val) {
      return val + " Some Message";
    }
  }
], function( answers ) {
  console.log( JSON.stringify(answers, null, "  ") );
});

您还可以创建自己的提示。

干杯。

票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30249114

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档