如果不是来自NPM的依赖关系,NPM安装不会触发babel构build
例如,如果在我的package.json中,我有这样的:
"dependencies": { "cacheman": "2.1.0" }
它工作,当我做npm安装时,它会触发cacheman里面的构build脚本。
但是,如果我这样做:
"dependencies": { "cacheman": "https://github.com/cayasso/cacheman.git" }
它不会工作。 npm install不会触发cacheman的构build过程。
这是为什么?
您所指的脚本是在将npm模块发布到npmregistry之前运行的预发布脚本。 在这里检查package.json#L9
显示在这里
"scripts": { "test": "make test", "prepublish": "make" }
当你从github安装时,没有发布步骤,所以脚本没有运行。
如果你只想从github安装并运行脚本,你可以把它作为cacheman的postinstall脚本来添加(如果你不是cacheman的拥有者,你将不得不分叉repo进行修改) 。
"scripts": { "test": "make test", "prepublish": "make", "postinstall": "make"//Added postinstall }
查看npm脚本文档中的示例以获取更多详细信息。