npm全局或本地软件包的安装方法

135 阅读2分钟

一个软件包什么时候最好全局安装?为什么?

本地包和全局包的主要区别在于此。

  • 本地软件包安装在你运行npm install <package-name> 的目录中,它们被放在这个目录下的node_modules 文件夹中。
  • 全局包都放在你系统中的一个地方(具体位置取决于你的设置),不管你在哪里运行npm install -g <package-name>

在你的代码中,它们都是以同样的方式被要求的。

那么你应该在什么时候以一种方式或另一种方式安装呢?

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

这可以确保你的电脑中可以有几十个应用程序,如果需要的话,都可以运行每个包的不同版本。

更新一个全局软件包会使你所有的项目都使用新的版本,你可以想象这可能会在维护方面造成噩梦,因为一些软件包可能会破坏与进一步依赖的兼容性,等等。

所有的项目都有自己的本地版本的软件包,即使这看起来是一种资源的浪费,但与可能产生的负面影响相比,它是微不足道的。

当一个包提供了一个可执行的命令,你可以从shell(CLI)中运行,并且在不同的项目中重复使用时,它应该被全局安装

你也可以在本地安装可执行命令,并使用npx运行它们,但有些软件包最好是全局安装。

你可能知道的流行的全局软件包的伟大例子是

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

你的系统上可能已经有一些全局安装的软件包。你可以通过在命令行上运行

就可以看到它们。