Tim*_*rdy 1 node.js npm yeoman yeoman-generator
我创建了一个自动生成器 - generator-ngbp并将其发布到npm.你可以通过安装它
npm install -g generator-ngbpRun Code Online (Sandbox Code Playgroud)
通过npm链接在本地工作时,一切运行良好,包括"模块"子生成器
yo ngbp:module "moduleName"Run Code Online (Sandbox Code Playgroud)
当我删除nodejs下的链接node_modules文件夹并从npm如上所述安装它时,generator-ngbp的node_modules文件夹不包含容纳子生成器的"module"文件夹,并且"module"子生成器不起作用.
谁能看到我做错了什么?它与npm发布有关吗?
Tim*_*rdy 13
好的,我找到了答案.显然,当我第一次生成我的生成器时,Yeoman生成器 - 生成器为我的package.json添加了一个"files"选项(这是一个满口).
看起来像这样......
"files":[
"app"
],Run Code Online (Sandbox Code Playgroud)
这告诉npm确切包含哪些文件,这看起来有点愚蠢,因为它会引导您走向失败之路.如果你进一步遵循官方的Yeoman教程并创建自己的子生成器,由于这个不幸的配置设置,它将不会被发布.
只需完全删除这个json属性,当你"npm发布"时,你的生成器中的所有文件都会被发布到npm(你需要在package.json中增加你的"版本"以便再次发布).