Я новичок в генераторах yeoman
(я использовал множество сторонних генераторов, но никогда не писал свои собственные)...
Всякий раз, когда я задаю вопрос пользователю с подсказкой, процесс никогда не завершается:
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));
}
}
});
Вывод консоли выглядит так:
$ 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...
Если я закомментирую код подсказки, все будет работать как положено.
$ yo debug-test
Your first generator
$
Почему добавление подсказки может помешать корректному завершению работы генератора? Я что-то упустил в генераторе, который неправильно закрывает асинхронный код?
пакет.json
{
"name": "generator-debug-test",
"version": "0.1.0",
"description": "",
"files": [
"app",
"router"
],
"keywords": ["yeoman-generator"],
"dependencies": {
"yeoman-generator": "^0.20.2"
}
}
Похоже, это проблема с MINGW64 bash, который я использовал. Если я переключаюсь на собственную командную строку Windows, она работает должным образом.