Ich bin ganz neu in yeoman
Generatoren (I viel 3rd-Party-Generatoren verwendet habe nur nie meine eigene geschrieben) ...Yeoman Prompt nie verlässt
Jedes Mal, wenn ich eine Frage an den Benutzer mit einer Eingabeaufforderung fragen, die Prozess nie verlassen:
var generators = require('yeoman-generator');
module.exports = generators.Base.extend({
// The name `constructor` is important here
constructor: function() {
// Calling the super constructor is important so our generator is correctly set up
generators.Base.apply(this, arguments);
// Next, add your custom code
this.option('coffee'); // This method adds support for a `--coffee` flag
this.log('Your first generator');
},
prompting: {
askForInsightOptIn: function() {
var done = this.async();
this.prompt({
type: 'confirm',
name: 'insight',
message: 'How are you?',
default: true
}, function (prompt) {
done();
}.bind(this));
}
}
});
die Konsolenausgabe wie folgt aussieht:
$ yo debug-test
Your first generator
? How are you? (Y/n) y
? How are you? Yes
I can type anything here and it never responds
waiting...
Wenn ich den Code für die prompten Kommentar-out, funktioniert alles wie erwartet.
$ yo debug-test
Your first generator
$
Warum sollte das Hinzufügen einer Eingabeaufforderung den Generator vom Verlassen anmutig verhindern? Fehle ich etwas im Generator, das den Async nicht korrekt schließt?
package.json
{
"name": "generator-debug-test",
"version": "0.1.0",
"description": "",
"files": [
"app",
"router"
],
"keywords": ["yeoman-generator"],
"dependencies": {
"yeoman-generator": "^0.20.2"
}
}
Sieht aus wie dies ein Problem mit MINGW64 bash war ich mit. Wenn ich zur nativen Windows-Eingabeaufforderung umschalte, funktioniert es wie erwartet.