如何在Yeoman上提示之前执行其他提示?

Fue*_*ter 21 javascript node.js yeoman

当howoman上的prompt1为true时如何执行prompt2,如下所示?

var prompts = [
  {name: 'prompt1', message: 'Ask 1?'},
  {name: 'prompt2', message: 'Ask 2?'}
];
Run Code Online (Sandbox Code Playgroud)

Ste*_*hen 47

Yeoman使用一个名为Inquirer.js的东西作为提示系统.以下是如果问题1为真,您可以问问题2的示例:

inquirer.prompt([{
  name: 'movie',
  type: 'confirm',
  message: 'Have you seen a movie lately?'
}, {
  when: function (response) {
    return response.movie;
  },
  name: 'good-or-not',
  message: 'Sweet! Was it any good?'
}], function (response) {});
Run Code Online (Sandbox Code Playgroud)

来自Inquirer.js文档:

when :( 功能)接收当前用户的答案哈希值,应该返回true或false,具体取决于是否应该询问此问题.