我想在第一台发电机完成安装后调用另一台自动生成器,这将基于我给出的一个提示的答案. 我试着在最后调用它. end: function () { this.installDependencies({ callback: function () { if( this.generator2 )
我试着在最后调用它.
end: function () { this.installDependencies({ callback: function () { if( this.generator2 ){ shell.exec('yo generator2'); } }.bind(this) }); },
这会运行generator2,但我无法回答任何提示.
这是两个独立的发电机,所以我不能使第二个发电机.
使用Yeoman composability feature.关于代码,不要使用this.installDependencies()回调(这将无法按预期工作).而是使用run loop priorities.
此外,您应该检查您的逻辑以及您对当前问题的看法.在编写生成器时,核心思想是保持两者分离.他们不应该关心排序,他们应该以任何顺序运行并输出相同的结果.以这种方式考虑您的代码将大大降低复杂性并使其更加健壮.