5 个您不使用的 package.json 魔法脚本!
关于我
Node 包管理器生态系统提供了许多神奇的脚本,但初学者还没有使用它们。
当我想发布一个软件包时,我会手动升级版本,构建项目,然后运行npm publish
发布包。这本身就花费了很多时间。
但是后来,我阅读了npm 的文档,意识到所有过程都可以自动化,只需一个命令即可完成。
文档中有很多内容,因此在这篇 DEV 文章中,我将尝试
使用文档作为参考来揭开 5 个最重要的 package.json 脚本的神秘面纱。
让我们开始吧
1. 预发布
"scripts": {
"prepublish": "minify or build your code here",
}
此命令在程序包打包和发布之前运行。当用户npm i
在本地运行且不带任何参数时,此命令也会运行。
来自 NPM 文档:
如果您需要在使用包之前对其进行操作,并且不依赖于目标系统的操作系统或体系结构,请使用预发布脚本。
预发布脚本包括以下任务:
- 将 CoffeeScript 源代码编译为 JavaScript。
- 创建 JavaScript 源代码的缩小版本。
- 获取您的包将使用的远程资源。
在发布前进行这些工作的优点是,它们可以在一个地方完成一次,从而降低复杂性和可变性。
此外,这意味着:
- 您可以依赖
coffee-script
作为devDependency
,因此您的用户不需要安装它。 - 您不需要在包中包含缩小器,从而为用户减少尺寸。
- 您不需要依赖用户在目标机器上拥有或其他系统工具
curl
。wget
2. 准备
prepare
和prepublish
...之间有一点区别...
prepare
脚本在git
安装依赖项时运行。此脚本在 之后prepublish
和 之前运行prepublishOnly
。
示例👇
"scripts": {
"build": "rollup -c",
"prepare": "npm run build"
}
构建项目可能是您在prepare
脚本中可以执行的最好的事情。
3. 仅预发布
prepublish
此命令与和具有相同的用途,prepare
但仅在 上运行npm publish
!🔥
4. 发布后
顾名思义,该命令在npm publish
...之后运行
5.脚本的pre
定制和执行post
看一下下面的脚本。
"scripts": {
"predeploy": "cd example && npm install && npm run build",
"deploy": "gh-pages -d example/build"
}
要完全执行deploy
,您不需要npm run predeploy && npm run deploy
,只需运行npm run deploy
即可完成pre
和post
任务。
您可以将pre
和post
前缀添加到任何脚本并使其按时间顺序运行。
还有更多!
- 预安装
- 安装后
- 卸载前
- 卸载后
- 预版本
- 后版本
- 预启动
- 启动后
这些名字非常容易理解。
要了解有关这些内容的更多信息,您可以参考NPM文档npm-scripts
。
结论
NPM Magic Scripts 对任何人都有用。我很后悔过去没有在项目中用它。😅
关于我
我是 Kumar Abhirup,一名来自印度的 16 岁 JavaScript React 开发人员,我每天都在学习新事物。
在下面评论您更好的方法和建议以改进本文。:)
文章来源:https://dev.to/kumareth/5-package-json-magic-scripts-that-you-don-t-use-4n3p