Javascript 在提示之间传递数据

Javascript 在提示之间传递数据,javascript,node.js,yeoman,yeoman-generator,Javascript,Node.js,Yeoman,Yeoman Generator,我可以在yeoman中的两个提示之间传递数据吗 我有两个提示,比如 { type: 'input', name: 'Name', message: 'Name?' },{ type: 'input', name: 'package', message: 'Package?', default: 'org.my.app.'+<prompt.name> } 但它给出了未定义的,即使函数值已存储在this.testValue中 还有更好的办法吗?我终于找到了答

我可以在yeoman中的两个提示之间传递数据吗

我有两个提示,比如

{
  type: 'input',
  name: 'Name',
  message: 'Name?'
},{
  type: 'input',
  name: 'package',
  message: 'Package?',
  default: 'org.my.app.'+<prompt.name>
}
但它给出了
未定义的
,即使函数值已存储在
this.testValue中


还有更好的办法吗?

我终于找到了答案。实现它的方法是使用两个prompt变量,并在first的promise返回后运行第二个变量

const prompt1 = [{
  type: 'input',
  name: 'Name',
  message: 'Name?'
}];

return this.prompt(prompt1).then(props => {
  const prompt2 = [{
    type: 'input',
    name: 'package',
    message: 'Package?',
    default: 'org.my.app.'+props.name
  }];

  return this.prompt(prompt2).then(props => {
   //code goes here
  });
});
const prompt1 = [{
  type: 'input',
  name: 'Name',
  message: 'Name?'
}];

return this.prompt(prompt1).then(props => {
  const prompt2 = [{
    type: 'input',
    name: 'package',
    message: 'Package?',
    default: 'org.my.app.'+props.name
  }];

  return this.prompt(prompt2).then(props => {
   //code goes here
  });
});