作为JavaScript
开发人员,NPM
是我们一直使用的东西,并且我们的脚本在终端上连续运行。
如果我们可以节省一些时间呢?
1、直接从npm打开文档
如果我们可以直接使用npm
跳转到软件包的文档怎么办?
npm home package-name
# 例如:
npm home react # 将在浏览器中打开reactjs.org
2、打开bug页面
为了以防万一,我们想在程序包上提交一个错误。
npm bugs package-name
# 例如:
npm bugs @agney/playground
如果有这个包的作者的链接,将在浏览器中打开github
问题页面(或任何问题页面)。
3、查看包中的所有脚本
如果您不是一开始就写的话,很难记住脚本名称。 您可以运行以下命令来查看脚本名称和正在运行的命令,而不是转到package.json
。
npm run
4、跳过所有初始化问题
当您运行npm init
时,它将询问许多问题,您可以一项项的设置,但是大多数时候最好跳过并接受默认设置。
npm init -yes
5、将软件包更新为最新版本。
NPM CLI
的默认命令将仅根据package.json
中指定的semver
范围更新软件包。
npm update
但是,我认为我们不相信软件包作者或我们想自己来更改semver
指标。yarn
提供了与互动升级-最新的足够好的实用程序,但不适用于NPM
。
要使用NPM
克隆此功能,可以使用名为npm-check
的软件包。
npx npm-check --update
npx是Node自带npm模块,所以可以直接使用npx命令。万一不能用,就要手动安装一下。
http://www.ruanyifeng.com/blog/2019/02/npx.html
$ npm install -g npx
6、在CI上更快地安装npm
npm install
附带了一些限制(面向用户的功能),从而使其固有速度变慢。但是我们确实在CI
服务器上需要这些,NPM
允许我们使用命令跳过这些。
npm ci
您可以在CI
服务器中将npm install
替换为npm ci
,如果您有package-lock.json
可以做得很好。
例如,持续集成服务 Travis CI
的配置应为:
# .travis.yml
install:
- npm ci
# 保留npm缓存以加快安装速度
cache:
directories:
- "$HOME/.npm"
7、更好的npm发布
npm publish
很好,它可以用semver
更新您的软件包版本,然后将软件包推送到注册表中。
但这确实省略了一些重要步骤:构建和测试程序包。 要自动执行这些操作,可以使用预发布脚本。
"scripts": {
"prepublish": "npm run build"
}
但是预发布在每次安装时执行,因此不是创建变更日志或运行测试的最佳位置。 在对命名提出了一些批评之后(无论如何这是最困难的事情),NPM
引入了一些新的自动挂钩。
"scripts": {
"prepublishOnly": "npm test"
}
或者,软件包np
更好。
您可以简单地运行:
npx np
它将运行所有必要的步骤,包括安装软件包,构建和运行测试。 它还将创建标签并在Github
上发布。
您还使用什么技巧来节省时间?可以在评论里分享。
原文:https://xushanxiang.com/2019/12/7-npm-commands-to-save-time.html