解決Yeoman執行遇到TypeError: Cannot read property ‘bold’ of undefined

錯誤訊息:

/home/archie/.nvm/v0.10.20/lib/node_modules/generator-genesis/node_modules/yeoman-generator/lib/util/common.js:5
'\n `————-´ | ' + 'Welcome to Yeoman,'.yellow.bold + ' |' +
^
TypeError: Cannot read property ‘bold’ of undefined
at Object.<anonymous> (/home/archie/.nvm/v0.10.20/lib/node_modules/generator-genesis/node_modules/yeoman-generator/lib/util/common.js:5:56)
at Module._compile (module.js:456:26)
at Object.Module._extensions..js (module.js:474:10)
at Module.load (module.js:356:32)
at Function.Module._load (module.js:312:12)
at Module.require (module.js:364:17)
at require (module.js:380:17)
at Object.<anonymous> (/home/archie/.nvm/v0.10.20/lib/node_modules/generator-genesis/node_modules/yeoman-generator/lib/base.js:91:26)
at Module._compile (module.js:456:26)
at Object.Module._extensions..js (module.js:474:10)

問題出在.yellow.blod沒有blod這個property

google找到github有關於這問題的討論:
https://github.com/yeoman/generator-webapp/issues/137

看完的結論是更新 yeoman-generator 到版本~13.0.0以上就可以。

不過,若是你使用的專案中有另外再安裝yeoman-generator,那就必須設定專案中的package.json,將版本升級,便可解決問題。

假設使用generator-genesis(global安裝-g):

  • 編輯 generator-genesis 底下的package.json
  • 找到dependencies : { yeoman-generator: ~0.12 },將0.12改為~0.13後儲存
  • 於在generator-genesis目錄下,執行npm update yeoman-generator
  • 升級完成