Генератор Yeoman не включает подгенератор после публикации в npm

Я создал генератор yeoman — generator-ngbp и опубликовал его в npm. Вы можете установить его через

npm install -g generator-ngbp

При локальной работе через npm link все работало хорошо, в том числе и подгенератор "module"

yo ngbp:module "moduleName"

Когда я удалил связанную папку node_modules в nodejs и установил ее, как описано выше, из npm, папка node_modules для генератора-ngbp не содержала папку «модуль», в которой находится подгенератор, а подгенератор «модуль» не работает.

Может ли кто-нибудь увидеть, что я делаю неправильно? Это как-то связано с публикацией npm?


person Tim Hardy    schedule 04.04.2014    source источник


Ответы (1)


Хорошо, я нашел ответ на это. Судя по всему, генератор-генератор Yeoman добавил параметр «файлы» в мой package.json, когда я впервые сгенерировал свой генератор (это полный рот).

Это выглядело так...

"files":[
    "app"
],

Это говорит npm, какие именно файлы включать, что кажется глупым, поскольку ведет вас по пути к отказу. Если вы продолжите следовать официальному учебнику Yeoman и создадите свой собственный подгенератор, он не будет опубликован из-за этой неудачной настройки конфигурации.

Просто полностью удалите это свойство json, и все файлы в вашем генераторе будут опубликованы в npm, когда вы «опубликуете npm» (однако вам нужно увеличить «версию» в package.json для повторной публикации).

person Tim Hardy    schedule 04.04.2014