npm全局或本地软件包

什么时候最好在全球范围内安装软件包?为什么?

本地和全局软件包之间的主要区别是:

  • 本地套餐安装在您运行的目录中npm install <package-name>,然后将它们放入node_modules此目录下的文件夹
  • 全球套餐无论您在何处运行,都将它们放置在系统中的单个位置(确切的位置取决于您的设置)npm install -g <package-name>

在您的代码中,它们都以相同的方式被要求:

require('package-name')

所以什么时候应该以一种或另一种方式安装?

一般来说,所有软件包都应在本地安装

这样可以确保您的计算机中可以有数十个应用程序,并且在需要时全部运行不同版本的每个程序包。

更新全局软件包将使您的所有项目都使用新版本,并且您可以想象,这可能会导致维护方面的噩梦,因为某些软件包可能会破坏与其他依赖项的兼容性,依此类推。

所有项目都有自己的软件包本地版本,即使这看起来像浪费资源,与可能产生的负面影响相比,它也是最小的。

一袋应该在全球范围内安装当它提供可从外壳程序(CLI)运行的可执行命令时,并且可在项目中重复使用。

您还可以在本地安装可执行命令并使用以下命令运行它们像素,但某些软件包最好在全球范围内安装。

您可能知道的流行的全球软件包的绝佳示例是

  • npm
  • create-react-app
  • vue-cli
  • grunt-cli
  • mocha
  • react-native-cli
  • gatsby-cli
  • forever
  • nodemon

您可能已经在系统上全局安装了一些软件包。您可以通过运行查看它们

npm list -g --depth 0

在您的命令行上。

免费下载我的Node.js手册


更多节点教程: