这是每个开发人员都应该知道的 npm 技巧和窍门的集合。如果您的工作涉及使用 npm 包,您应该会发现这些 npm 命令很有用。
Node Package Manager,或 npm,是一种在项目中安装和管理 JavaScript 包的工具。如果您的计算机上安装了 Node,那么您也已经安装了 npm。
你应该知道的 npm 命令
这不是学习 npm 的教程,官方文档是入门的好地方,而是一组提示和技巧,可以帮助您使用该npm
实用程序做更多事情。
让我们直接进入有用的命令列表:
无需安装即可立即运行软件包
NPM 注册表是一个宝库,可用于寻找有用的包,而不仅仅是程序员。
例如,该speed-test
包显示您的互联网连接速度。这些emoj
软件包可帮助您从终端搜索表情符号。并且wifi-passwords
是一种了解当前 WiFi 网络密码的简单方法。
您可以直接从命令行运行这些实用程序包,而无需使用npx命令安装它们。
npx speed-test
npx emoj unicorn
npx public-ip-cli
npx wifi-password-cli
更快地安装 npm 包
您可能曾经npm install
在node_modules
项目的本地文件夹中安装包和依赖项。将此命令替换为npm-ci,您将能够更快地安装软件包。
npm ci
如果 node_modules 文件夹已经存在,它将在npm ci
开始安装包之前自动删除。
回收空间
如果您使用 npm 包已有一段时间,node_modules
磁盘上的各种文件夹可能会占用数 GB 的空间。非常有用的npkill可以找到您系统上的所有 node_modules 文件夹,并允许您以交互方式删除它们。
npx npkill
快速下载 Git 存储库
大多数开发人员使用该git clone
命令下载 Git 存储库。但是,这也会下载整个 git 历史记录,从而使过程变慢。该degit包可以下载最新提交到主分支本地和你不需要指定的完整URL Github上。
npx degit username/repo
npx degit labnol/apps-script-starter
列出已安装的软件包
生成具有全局范围的系统上安装的所有 npm 包的列表。删除-g
标志以仅列出安装在当前项目目录中的包。
npm ls --depth=0
npm ls -g
查找未使用的依赖项
该depcheck命令将列出未在基于依赖项目中使用的所有NPM包package.json
。
npx depcheck
使用该命令npm uninstall <package-name>
卸载任何未使用的包。
查找过时的依赖项
获取当前项目中所有过时包的列表。此命令检查package.json
文件中列出的每个模块,并将其与 NPM 注册表中可用的最新版本进行比较。
添加-g
标志以获取系统上全局安装的所有过时软件包。
npm outdated
npm outdated -g
更新包版本
该NCU命令将更新package.json
与在列出的软件包的最新版本的文件dependencies
和devDependencies
段。
或者使用该npm-check -u
命令以交互模式将包更新到最新版本。
npm-check
npm-check -u
ncu -u
删除额外的包
使用prune命令删除本地安装但未在package.json
文件中列出的所有包。如果使用 —dry-run 标志,则实际上不会进行任何更改。
npm prune
或者,您可以删除该node_modules
文件夹并npm ci
再次运行。
查找易受攻击的软件包
运行该audit
命令以检查dependencies
和devDependencies
部分中列出的软件包中的漏洞。添加fix
标志以自动应用修复(如果有)。
npm audit
npm audit fix
有用的 NPM 包网站
-
bundlephobia - 上传您的
package.json
文件并了解安装依赖项的成本(大小)。 - diff.intrinsic - 比较 npm 包的任意两个版本,并了解更新中哪些文件发生了变化。
- npmtrends - 根据下载次数比较 npm 注册表中软件包的相对流行度。
网友评论