Подсказка Yeoman никогда не выходит

Я новичок в генераторах 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, она работает должным образом.


person Joseph Carroll    schedule 20.04.2016    source источник


Ответы (1)


Поддержка Node.js для командной строки немного ненадежна, особенно для Windows. https://github.com/nodejs/node/issues/5384

О проблемах с использованием модулей, связанных с readline, в любых подсказках следует сообщать в средстве отслеживания ошибок Node.js, поскольку это проблема поддержки платформы.

person Simon Boudrias    schedule 21.04.2016