设备信息
- Windows 11 专业版 22H2
- Intel® Core™ i7-9750H CPU @ 2.60GHz 2.60 GHz
背景
公司的一个项目总是在线上打包成功,本地打包失败,对此一步一步排查,发现线上服务器 NodeJS 版本为 14
,而本地版本为 16
。
由于我机器上只有 16
,并且几乎所有的配置如 pnpm,yarn 等都放在 NodeJS 目录下,所以想通过 NodeJS 的版本控制工具来实现版本切换。
在经过一番搜索后,发现 nvm
是比较适合我的,我个人偏向于 “有问题能找到答案,不需要踩坑” 的工具,nvm
的历史、社区已经满足了。
刚开始装上了 nvm
,但是当他查找到我本地已有 NodeJS 程序时,询问是否需要管理本地的程序时我选择了是,然后非常难受的发现我的结构目录都被复制到 nvm
的目录了。在此呢给大家建议一开始不要让 nvm
管理已有的 Node。
经过一番观察,发现 nvm
是通过链接来实现不同版本控制的,原有数据还有保留,通过重新配置目录与环境变量PATH恢复了,后来在使用过程中发现了 Volta
,看起来很不错就选择放弃了 nvm
,Volta
目前不支持 pnpm
。