关于nvm与node.js

1 安装nvm

安装过程中手动修改 nvm的安装路径

以及修改 通过nvm安装node后正在使用的node的存放目录 【这句话可能难以理解,但接着往下看你就了然了】

2 修改nvm中settings.txt文件配置

nvm安装成功后,通常在该文件中会出现以下配置:

复制代码
其中,
	root 
		表示通过命令【nvm install 版本号】下载的node的存放路径,即下载的不同版本的node会存放在这,
		默认是nvm的根目录存放,若想修改安装目录,手动更改即可,具体如下图所示
	path
		表示通过命令【nvm use 版本号】切换使用node的存放路径,
		它是一个软链接,当切换node的版本时,会自动映射对应版本的node

可自定义nvm安装node时,node的存放位置

注:
nvm_installed_node这个目录需要手动先创建好,在【nvm install 版本号】时,会将对应版本的node目录存放到该目录下;
nvm_using_node目录在【nvm use 版本号】时会自动创建并自动链接到nvm_installed_node目录中对应版本号的node目录




3 关于环境变量

在安装nvm时,会自动配置nvm相关的环境变量

复制代码
其中,
	NVM_HOME 
		表示 nvm 的存放路径
	NVM_SYSLINK
		表示 【nvm use 版本号】时,自动创建的软链接的存放位置

4 使用命令下载指定版本的node并使用

4.1 下载:nvm install 版本号

下载后,指定版本的node就会存放在配置好的node的存放目录中

4.2 使用:nvm use 版本号

初次使用时,会自动创建当前使用node的存放目录并自动链接到对应版本的node的目录,

之后切换node版本就会自动链接到对应版本的node目录

5 配置npm的包管理

如果不配置,默认是存放到 C:\Users\username\AppData\下的Roaming\npm 下,

所以,为了方便统一对npm下载的包进行管理,可采取如下配置

5.1 创建 node_global 目录

node_global目录用于存放通过npm全局安装的模块【使用npm install -g命令安装的包】。

这些模块通常包括命令行工具或全局可用的库,例如npm本身、yarn、gulp等

5.2 创建 node_cache 目录

node_cache目录用于存放npm下载的包【全局或本地】的缓存文件。

当您安装或更新npm包时,npm会首先检查缓存目录中是否已有该包的文件,

如果有则直接使用,避免重复下载,从而节省时间和带宽。

5.3 通过命令进行相关配置

复制代码
将原存放路径更换为存放到node_global路径的命令:
	npm config set prefix "D:\Program Files\node_npm\nodel_global"

将原存放路径更换为存放到node_cache路径的命令:
	npm config set cache "D:\Program Files\node_npm\node_cache"

5.4 配置node_global环境变量

将node_global目录添加到环境变量中,以便全局模块可以通过命令行在任意位置访问

6 卸载指定版本的node

nvm uninstall 版本号

7 配置镜像源

如果下载缓慢,可配置国内镜像源,具体可在nvm的settings.txt文件中配置,如图所示

复制代码
node_mirror: https://npmmirror.com/mirrors/node/
npm_mirror: https://npmmirror.com/mirrors/npm/

node_mirror:用于下载Node.js的镜像源。
npm_mirror:用于下载npm包的镜像源。



相关推荐
OpenTiny社区17 分钟前
把 SearchBox 塞进项目,搜索转化率怒涨 400%?
前端·vue.js·github
码事漫谈1 小时前
C++模板元编程从入门到精通
后端
_風箏1 小时前
Java【代码 14】一个用于判断磁盘空间和分区表是否需要清理的工具类
后端
ReturnTrue8681 小时前
Vue路由状态持久化方案,优雅实现记住表单历史搜索记录!
前端·vue.js
_風箏1 小时前
Java【代码 13】前端动态添加一条记后端使用JDK1.8实现map对象根据key的部分值进行分组(将map对象封装成指定entity对象)
后端
_風箏1 小时前
Java【代码 12】判断一个集合是否包含另一个集合中的一个或多个元素 retainAll() 及其他方法
后端
Java中文社群2 小时前
Coze开源版?别吹了!
人工智能·后端·开源
懂得节能嘛.2 小时前
【SpringAI实战】ChatPDF实现RAG知识库
java·后端·spring
站大爷IP2 小时前
Python爬虫库性能与选型实战指南:从需求到落地的全链路解析
后端
武昌库里写JAVA2 小时前
「mysql」Mac osx彻底删除mysql
vue.js·spring boot·毕业设计·layui·课程设计