错误“;未处理'错误'事件“;在运行yo发电机之后

Error "Unhandled 'error' event" after running yo generator

本文关键字:错误 发电机 之后 yo 事件 未处理 运行      更新时间:2023-09-26

我正在尝试使用generatos的generator,generator generator,但我遇到了一个错误。

henrique@liberato:~/Documents$ yo generator
? Your generator name (generator-documents) 
events.js:154
      throw er; // Unhandled 'error' event
      ^
TypeError: this.env.adapter.prompt(...).then is not a function
    at Base.prompt (/home/henrique/.nvm/versions/node/v5.8.0/lib/node_modules/generator-generator/node_modules/yeoman-generator/lib/base.js:232:45)
    at askName (/home/henrique/.nvm/versions/node/v5.8.0/lib/node_modules/generator-generator/node_modules/inquirer-npm-name/lib/index.js:25:19)
    at module.exports.generators.Base.extend.prompting (/home/henrique/.nvm/versions/node/v5.8.0/lib/node_modules/generator-generator/app/index.js:21:12)
    at Object.<anonymous> (/home/henrique/.nvm/versions/node/v5.8.0/lib/node_modules/generator-generator/node_modules/yeoman-generator/lib/base.js:431:23)
    at /home/henrique/.nvm/versions/node/v5.8.0/lib/node_modules/generator-generator/node_modules/run-async/index.js:26:25
    at /home/henrique/.nvm/versions/node/v5.8.0/lib/node_modules/generator-generator/node_modules/run-async/index.js:25:19
    at /home/henrique/.nvm/versions/node/v5.8.0/lib/node_modules/generator-generator/node_modules/yeoman-generator/lib/base.js:432:9
    at processImmediate [as _immediateCallback] (timers.js:383:17)

版本:

henrique@liberato:~/Documents$ node -v
v5.8.0
henrique@liberato:~/Documents$ npm -version
3.8.9

我已经做了npm缓存清理和npm安装-g yo/yeoman发电机/发电机发电机。已重新安装节点和npm。

感谢您抽出时间:)

您需要将yo更新到最新版本。

npm -g update yo

如果这不起作用,那么你想要:

npm -g uninstall yo
npm -g install yo

我也遇到过类似的问题。然而,更新或重新安装yo对我没有帮助。

我的节点环境由nvm管理,我目前使用的是节点v6.2.0。然而,当我使用nodev4.4.1时,yo早就安装在我的电脑中了。当我使用v4.4.1时,我没有得到错误。

因此,结论是yo-angular全栈命令在安装它的同一个节点版本中工作。由于nvm在节点版本之间切换很方便,所以对我来说没什么大不了的。我只在生成一些角度分量时使用v4.4.1,然后切换回最新版本。

我也遇到了这个问题。我还使用nvm来管理我的节点版本。

在我的例子中,npm dedupe -gnpm update -g yonpm uninstall -g yonpm install -g yo的一些组合起了作用。我还从我的生成器中重新运行npm link,因为它是本地生成器。我认为如果它是你从npm安装的生成器,npm uninstall -g <generator-name>后面跟着`npm install-g也可以达到同样的目的。

在这一切的某个时刻,生成器重新开始工作,但我没有注意到确切的时间,因为我正在运行生成器作为单元测试的一部分。

最终,当我从命令行运行生成器时,我意识到生成器正在工作,但当我从测试文件运行生成器时却没有。

这时,将yeoman的测试助手(npm update yeoman-test)从1.1.0更新为1.4.0就成功了。