![](https://resource.joker2yue.cn/blog/images/coverImg/Nodejs,NVM的安装与使用.jpg)
NodeJS,NVM的安装与使用
Joker2YueNodejs,NVM的安装与使用
NVM
下载
进入官网下载链接Releases · coreybutler/nvm-windows (github.com),windows系统下载nvm-setup.zip安装包
安装
-
同意协议
注意:如果电脑上之前已经单独安装了node,先卸载,然后双击nvm.exe文件进行安装
-
选择nvm安装路径
1
D:\NVM
-
选择node安装路径
1
D:\Nodejs
-
安装确认
-
查看刚安装的nvm目录
-
查看版本
控制台输入
1
nvm -v
-
出现这种情况为正常安装
-
如果提示找不到路径,需要手动配置环境变量
-
配置环境变量
一般安装完成之后,环境变量是默认给配置好的,控制台输入nvm -v
也能够正常显示版本号。正常的环境变量如下
-
win + x
或者右键开始菜单,选择【系统】 -
选择【高级系统设置】
-
选择【环境变量】
-
选择【新建】
-
环境配置如下:
1
2NVM_HOME
D:\NVM1
2NVM_SYMLINK
D:\Nodejs -
将其添加到Path中
然后点击【确定】,在控制台中重新输入
nvm -v
查看
配置镜像
-
找到nvm的安装路径,打开settings.txt
-
添加node_mirro,npm_mirro
1
2node_mirror: https://npmmirror.com/mirrors/node/
npm_mirror: https://npmmirror.com/mirrors/npm/在2022年5月31日之前我们会这样配置:
1
2node_mirror: https://npm.taobao.org/mirrors/node/
npm_mirror: https://npm.taobao.org/mirrors/npm/但是中国镜像站早就在21年的时候就周知要老 npm.taobao.org 和 registry.npm.taobao.org 域名将于 2022 年 05 月 31 日零时起停止服务。
Nodejs
安装
nvm安装nodejs的常用命令:
-
1. nvm list - 显示版本列表
1
2
3nvm list :显示已安装的版本(同 nvm list installed
nvm list installed:显示已安装的版本
nvm list available:显示所有可以下载的版本 -
2. nvm install - 安装指定版本nodejs
1
2nvm install 14.5.0:安装 14.5.0 版本的 node.js
nvm install latest:安装最新版本 -
3. nvm use - 使用指定版本node
1
nvm use 14.5.0: 切换到 14.5.0 版本的 node.js
-
4. nvm uninstall - 卸载指定版本 node
1
nvm uninstall 14.5.0:卸载到 14.5.0 版本的 node.js
我们这里以安装14.15.0为例
然后你会看到NVM的安装目录下多了几个文件夹,用来存放不同的nodejs版本
使用
首次使用nvm时,需要启用nvm,控制台输入nvm on
查看D:\Nodejs
下是否有对应nodejs的安装文件
如果没有,请删除D:\Nodejs
,然后使用管理员权限重新运行一遍nvm on
这是因为nvm使用的是硬链接,比如你想使用18.17.0,那么它将会把D:\18.17.0
链接到D:Nodejs
下
切换版本
你可以使用nvm use node版本
来进行版本的切换
使用npm -version
查看版本
你可以使用node -v
来查看当前使用的nodejs版本
配置环境变量
-
在安装目录下新建两个文件夹【node_global】和【node_cache】
-
控制台输入
最好使用管理员权限
1
npm config set prefix "D:\Nodejs\node_global"
1
npm config set cache "D:\Nodejs\node_cache"
-
设置环境变量
1
2NODE_PATH
D:\Nodejs\node_global记得在Path中也加上
-
你可以使用
npm config ls
来查看当前Nodejs的配置情况
安装模块
使用npm install
模块进行安装,这里以安装express模块为例
1 | npm install express -g |
其中-g
代表全局安装,即安装到D:\Nodejs\node_global\node_modules
中
你可以在资源管理器中找到你安装的模块
更换镜像源
有时候模块下不动,那么就该考虑更换镜像源了
常用命令:
-
查看镜像源
1
2
3npm get registry
https://registry.npmjs.org/(npm默认镜像源) -
修改镜像源
npm config set registry xxx(镜像源地址)
,国内一般使用淘宝镜像源1
npm config set registry https://registry.npm.taobao.org
其他
yarn
-
yarn 也是一个软件包管理系统,同样用于管理 用 JavaScript 编写的软件包,yarn 的出现是为了弥补 npm 的一些缺陷。
-
安装
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
161、安装全局yarn(这样任何目录都可以使用yarn)
npm install -g yarn
2、切换到项目目录
cd ~/path/to/project
3、项目使用的版本(berry是项目代号,表示是2.0之后最新版本)
yarn set version berry
4、初始化 yarn
yarn init
5、安装项目所有依赖的js包
yarn
或
yarn install -
更新
1
yarn set version latest
-
yarn的命令
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23查看所有命令
yarn help
初始化,自动创建yarn运行必备文件
yarn init
安装项目依赖的所有js包
yarn
或
yarn install
安装指定js包
yarn add [package]
yarn add [package]@[version]
yarn add [package]@[tag]
更新指定js包
yarn up [package]
yarn up [package]@[version]
yarn up [package]@[tag]
删除指定js包
yarn remove [package]
cnpm
-
cnpm是淘宝团队做的国内镜像,因为npm的服务器位于国外可能会影响安装速度。淘宝镜像与官方同步频率目前为 10分钟 一次以保证尽量与官方服务同步。
-
PS.网上有一些贴子说cnpm会丢包,如果遇到丢包,删除node_modules目录,再重新使用npm,总体来说网络上不太建议使用cnpm。
-
安装:命令提示符执行
npm install cnpm -g --registry=https://registry.npm.taobao.org
-
查看版本:
cnpm -v
来测试是否成功安装 -
安装完成后可以cnpm通过来代替默认的npm
1
cnpm install [name]
nrm
-
nrm
包安装命令:npm i nrm -g
-
nrm
能够管理所用可用的镜像源地址以及当前所使用的镜像源地址,但是只是单纯的提供了几个url并能够让我们在这几个地址之间方便切换 -
nrm ls
即nrm list,查看所有可用的镜像,并可以切换。*号表示当前npm使用的地址,可以使用命令nrm use taobao
或nrm use npm
来进行两者之间的切换。1
2
3
4
5
6
7
8C:\Users\Joker>nrm ls
npm -------- https://registry.npmjs.org/
yarn ------- https://registry.yarnpkg.com/
cnpm ------- http://r.cnpmjs.org/
* taobao ----- https://registry.npm.taobao.org/
nj --------- https://registry.nodejitsu.com/
npmMirror -- https://skimdb.npmjs.com/registry/
edunpm ----- http://registry.enpmjs.org/
npm参数-g -S -D
-
-g
:全局安装。 将会安装在C:\Users\Administrator\AppData\Roaming\npm
,并且写入系统环境变量;非全局安装:将会安装在当前定位目录;全局安装可以通过命令行任何地方调用它,本地安装将安装在定位目录的node_modules文件夹下,通过要求调用; -
-S
:即npm install module_name --save
,写入package.json
的dependencies
,dependencies
是需要发布到生产环境的,比如jq,vue全家桶,ele-ui等ui框架这些项目运行时必须使用到的插件就需要放到dependencies
-
-D
:即npm install module_name --save-dev
,写入package.json
的devDependencies
,devDependencies
里面的插件只用于开发环境,不用于生产环境。比如一些babel编译功能的插件、webpack打包插件就是开发时候的需要,真正程序打包跑起来并不需要的一些插件。
常见问题与注意
常见问题
-
使用
nvm use
命令显示切换node版本成功,使用node -v
命令查看的时候还是原来的版本解决方法:删除
D:\Nodejs
,然后nvm off
,再nvm on
,再切换版本 -
安装了cnpm但是提示
'cnpm' 不是内部或外部命令,也不是可运行的程序或批处理文件。
,或者直接报错解决方法1:关闭cmd重新打开,如果问题复现,请检查NODE_PATH的环境变量。
解决方法2:更换nodejs版本
注意
-
如果切换到从未使用过的nodejs版本,最好进行配置
-
查看当前Node配置
npm config ls
,检查是否与期望配置一样 -
否则请修改如下:
-
将全局目录地址更改
npm config set prefix 目录名
-
将全局模块缓存地址更改
npm config set cache 目录名
-
修改镜像
-
-