我分叉a NPM module并在my fork修改了它。在我的fork中,需要运行命令gulp
来编译模块。运行此命令会将文件ical-expander-dist.js
输出到dist
文件夹。该文件应该成为fork包的一部分。
我叉子中的调整package.json
如下所示:
{
"name": "ical-expander",
"version": "1.1.1",
"description": "ICS / iCal / iCalendar parser / expander",
"main": "dist/ical-expander-dist.js", // adjusted path
"scripts": {
"prepare": "gulp" // added script
},
// [SNIP] - excluded irrelevant lines
"files": [
"dist/ical-expander-dist.js" // adjusted path
]
}
现在我想让我的fork成为另一个项目的依赖项。
{
"name": "otherproject",
"title": "Other Project",
// [SNIP] - excluded irrelevant lines
"dependencies": {
"ical-expander": "github:haukepribnow/ical-expander"
}
// [SNIP] - excluded irrelevant lines
}
在npm install
的根文件夹中执行otherproject
后,路径./node_modules/ical-expander
将包含LICENSE
,README.md
和{{1}文件}}。但它不包含package.json
。
在dist/ical-expander-dist.js
的{{1}}期间,我的ical-expander fork的prepare
脚本似乎没有运行。
所以我的问题归结为:如何在我的fork作为其依赖项之一的项目中执行npm install
时,如何确保编译我的fork的准备脚本?
答案 0 :(得分:0)
有时非常简单:确保使用npm
5.0.0或更高版本。
根据the npm changelog,npm install
将运行依赖关系'从{5.0}开始正确编写prepare
个脚本。