结合npm prepublish完成devDependencies精简dependencies依赖

最新内容请在github阅读

npm中script生命周期方法的深入探讨

1.Dependencies与devDependencies的合作

如果你想要对你的包在其被使用之前做某种操作,而且这种操作独立于操作系统,那么我们可以使用preppublish这个hook,它的主要作用如下:

(1)将CoffeeScript编译成为Javascript

(2)对Javascript代码进行压缩

(3)获取你的包需要加载的远程资源

在prepublish时机这样做的好处是,这些事情都可以立即完成,而且只在一处就可以完成;同时也具有以下好处:

(1)你可以将coffee-script放在devDependencies里面,因此使用该包的人不用下载coffee-script

(2)你的包也不需要依赖于其他的包对文件进行压缩,因此用户也不用安装

(3)你也不需要依赖于包的使用者系统中的curl等系统工具

2.批量添加生命周期函数

如果你想对所有的包的某一个生命周期函数都执行一段脚本,那么你可以使用这个方法来完成。你可以将一个可执行文件放在node_modules/.hooks/{eventname}里面,那么这个脚本会对所有的该目录下安装的包起作用。但是这段脚本的不同在于,她是在一个独立的子进程中运行的,而且也具有很多环境变量

参考文件

npm script

npm command

相关文章

迭代器模式(Iterator)迭代器模式(Iterator)[Cursor]意图...
高性能IO模型浅析服务器端编程经常需要构造高性能的IO模型,...
策略模式(Strategy)策略模式(Strategy)[Policy]意图:定...
访问者模式(Visitor)访问者模式(Visitor)意图:表示一个...
命令模式(Command)命令模式(Command)[Action/Transactio...
生成器模式(Builder)生成器模式(Builder)意图:将一个对...