返回

npx:一种无需安装 npm 包即可运行其可执行文件的新方法

前端

npx 来了,npm scripts 要靠边站?

最近在逛 GitHub 时,无意间看到 create-react-app(以下简称 create)的 README.md 发生了一些小变化。

咦,这个 npx 是什么鬼?

前几天好像也在一些 npm 工具包上看到过这个玩意儿,但当时没在意…

npx 是啥?

npx 是一个由 npm 提供的命令行工具,它允许你运行 npm 包中的可执行文件,而无需先安装它们。

过去,如果你想运行一个 npm 包中的可执行文件,你需要先使用 npm install 安装该包,然后才能使用该可执行文件。

例如,如果你想运行 create-react-app,你需要先安装它:

npm install -g create-react-app

然后,你就可以使用 create-react-app 命令了:

create-react-app my-app

有了 npx,你就无需先安装 create-react-app 了。你可以直接使用 npx 运行其可执行文件:

npx create-react-app my-app

npx 会自动下载 create-react-app,并运行其可执行文件。

npx 的好处

使用 npx 有以下几个好处:

  • 无需安装 npm 包即可运行其可执行文件。
  • 避免在系统中安装不必要的依赖项。
  • 在不同的项目中使用不同的 npm 包版本。

npx 的局限性

npx 也有以下几个局限性:

  • 可能会使你的命令行变得更慢,因为每次运行 npx 命令时,它都会下载 npm 包。
  • 如果你经常使用某个 npm 包,最好还是将其安装在系统中,以提高性能。

npx 与 npm scripts

npm scripts 是 npm 提供的另一种运行 npm 包中可执行文件的方法。

npx 相比,npm scripts 有以下几个好处:

  • 速度更快,因为 npm scripts 是预先安装的。
  • 可以使用 npm scripts 运行自定义命令。

但是,npm scripts 也有以下几个局限性:

  • 必须先安装 npm 包才能使用其脚本。
  • 只能在当前项目中使用 npm scripts。

结论

npx 和 npm scripts 都是运行 npm 包中可执行文件的有效方法。选择哪种方法取决于你的具体需求。

如果你需要快速运行一个 npm 包中的可执行文件,并且不介意每次运行时下载该包,那么 npx 是一个不错的选择。

如果你经常使用某个 npm 包,并且希望提高性能,那么最好还是将其安装在系统中,并使用 npm scripts 来运行其可执行文件。