我想要的是在我将项目安装到项目后运行脚本的方法。 postinstall
对我的案例不起作用,因为每当我的项目安装在其他地方时它就会运行,这已经太晚了。
另一种方法是使用hooks
我想要实现的是在将软件包安装到项目中之后运行nsp check
之类的安全测试。
我猜(尚未尝试过)我可以添加到node_modules/.hooks/
postinstall
bash脚本中,例如
#!/usr/bin/env node
../node_modules/nsp check
问题是此脚本执行时可能尚未安装nsp
包。所以我只有在安装nsp
时才运行该命令,这意味着我将错过在nsp
之前安装的每个软件包的安全检查(在初始npm i
中),或者我必须在我的包的preinstall
阶段安装nsp。这些解决方案(如果它们可以工作)似乎使IMO过于复杂。
这是实现我想要的更轻松的方式吗?
答案 0 :(得分:-3)
我把它放在“预发布”中。
根据https://docs.npmjs.com/misc/scripts
prepublish:在发布包之前运行。 (也可以在没有任何参数的本地npm安装上运行。)
我认为“还在本地npm安装上运行”部分就是你要找的东西。