Inquirer.js:如果一个提示为真,请问多个问题

时间:2018-09-22 17:49:56

标签: node.js inquirer inquirerjs

我正在使用Inquirer.js编写一个帐户创建者,并且只想在用户要求这种保护的情况下询问用户的电子邮件和密码。它是这样的:

inquirer.prompt([
        {type:'input', name:'username', message:'Choose an username:'}, 
        {type:'confirm', name:'protect_ask', message:'Do you want to password-protect your game list?'},
        {type:'input', name:'email', message:'E-mail (for password recovering):', when:function(answers){return answers.protect_ask}},
        {type:'password', name:'password', message:'Password:', when:function(answers){return answers.protect_ask}},
        {type:'password', name:'confirm_password', message:'Confirm you password:', when:function(answers){return answers.protect_ask}}
    ]

如您所见,我正在运行完全相同的 when 语句三次,因为它可以验证是否选择了密码保护。 我想知道是否存在更智能,更实用的方法,即运行此验证而不重复 when 函数。

也许嵌套三个问题就可以了,但是如何在不中断提示流程的情况下做到呢?

0 个答案:

没有答案