我呢,就是比较喜欢折腾新东西、新工具,最近想升级一下Node的版本,但是在我升级之后,我的Gitbook没办法用了,报错
F:\gitbook>gitbook build
C:\Users\wmymt\AppData\Roaming\npm\node_modules\gitbook-cli\node_modules\npm\node_modules\graceful-fs\polyfills.js:287
if (cb) cb.apply(this, arguments)
^
TypeError: cb.apply is not a function
at C:\Users\wmymt\AppData\Roaming\npm\node_modules\gitbook-cli\node_modules\npm\node_modules\graceful-fs\polyfills.js:287:18
at FSReqCallback.oncomplete (fs.js:169:5)
这就是因为Node版本的原因导致的,我就只有降低我的Node版本,但是我又不想卸载重新安装低版本,那么,我们的Node可不可以同时存在多个版本呢?答案的肯定的。这时候,需要借助一款利器--nvm
,nvm在Linux和Windows的安装方式有差别,Windows版本是基于Golang开发的,我们直接在Github上下载最新的exe安装包即可,
在安装的时候,会提示选择安装好的node安装目录(根据个人情况进行选择),如果是已经安装了Node会提示是否管理该Node
默认情况下,nvm是没有加入到环境变量的,所以,我们要么就手动添加到环境变量,要么就通过cmd进入到安装目录,这里我们为了以后方便,还是去配置环境变量吧
好了,现在来看看我们的node版本
C:\Users\wmymt>node -v
v12.18.4
现在用nvm看看我们的Node版本
C:\Users\wmymt>nvm ls
* 12.18.4 (Currently using 64-bit executable)
因为上面的错误,我需要切换到v10.22.1,那么就需要先使用nvm进行安装nvm install v10.22.1
来看看安装的node信息
C:\Users\wmymt>nvm list
* 12.18.4 (Currently using 64-bit executable)
10.22.1
现在可以切换到10.22.1了
C:\Users\wmymt>nvm use 10.22.1
Now using node v10.22.1 (64-bit)
现在就用node -v来看看当前的版本是否切换过去
C:\Users\wmymt>node -v
v10.22.1
可以看到切换完成了。以后就可以方便的管理我们Node版本了,你们说香不香
最后,我们把几个命令列出来:
- nvm install 10.22.1:安装指定版本号的node
- nvm use 10.22.1:切换node版本
- nvm current:当前node版本
- nvm ls:列出已经安装的node版本