Node.js与Npm标准安装与Npm全球安装
我已经从他们的网站上安装了Node.js与Npm标准安装与Npm全球安装,node.js,npm,Node.js,Npm,我已经从他们的网站上安装了node.jsv8.11.3,并且内置了npmv5.6 这些文件位于我的“program files\nodejs”文件夹中 但最近我意识到我可以跑步: npm安装-g npm@“某些版本(升级或降级)” 另一个版本将在全局范围内安装,这些文件将保存在我的“%appdata%\npm\node\u modules\”文件夹中 问题1: 如果我这样做,在VSCode终端上运行下一个npm命令时会发生什么?那么我将使用哪个版本?全局版本会覆盖内置版本吗? 问题2: 还有,如
node.jsv8.11.3
,并且内置了npmv5.6
这些文件位于我的“program files\nodejs”文件夹中
但最近我意识到我可以跑步:
npm安装-g npm@“某些版本(升级或降级)”
另一个版本将在全局范围内安装,这些文件将保存在我的“%appdata%\npm\node\u modules\”文件夹中
问题1:
如果我这样做,在VSCode终端上运行下一个npm命令时会发生什么?那么我将使用哪个版本?全局版本会覆盖内置版本吗?
问题2:
还有,如果我在我的一个项目中本地安装npm会发生什么?本地版本alsos是否覆盖内置版本?它是否也覆盖任何全局版本?
问题3:
使用npm
安装npm
感觉很奇怪。这很常见吗?
谢谢。基本上根据文件,我对这两个问题有一个答案: 如果要使用require('whatever')安装要在程序中使用的内容,请在项目根目录下本地安装。 如果要在shell、命令行或其他地方安装要使用的内容,请全局安装,以便其二进制文件最终位于PATH环境变量中
文档问题1:如果我这样做,当我在VSCode终端上运行下一个npm命令时会发生什么?那么我将使用哪个版本?全局版本会覆盖内置版本吗? 当您在Windows上安装软件并尝试从控制台使用命令时,它会采用您正在运行的命令的名称,并在Windows的路径环境变量中查找运行命令时要查找的文件夹列表。如果像您所说的那样运行
npm install-g npm
,那么在终端上运行的npm版本将是PATH环境变量中显示的第一个版本
问题2:另外,如果我在我的一个项目中本地安装npm会发生什么?本地版本是否也覆盖内置版本?它是否也覆盖任何全局版本?
由于PATH环境变量可能不会扩展到项目中的node\u modules
文件夹,因此它可能不会更改任何内容。本地安装的节点模块本质上是本地的,这意味着它们很少与文件夹之外的任何东西交互,因此必须调用它们
问题3:使用npm安装npm感觉很奇怪。这很常见吗?
我不能说这很普遍。我怀疑大多数节点开发人员是否经常自行安装npm。如果他们这样做了,他们可能不会通过已经在运行的npm来实现。但是,您可以使用npm update
通过npm更新所有已安装的软件包,包括npm本身