在节点版本之间自动切换的最佳方法是什么?

时间:2018-12-15 18:40:00

标签: node.js package.json nvm

当您处理两个项目时,一个项目取决于节点v 8,而另一个项目取决于节点v 10,您必须以某种方式在它们之间进行切换。

  1. 不方便的方法: 方便,因为当我刚进入项目目录的根目录或刚打开新的终端会话时,我必须始终记住键入nvm use。 因此,当您处理某个项目时,可以进入root目录并运行nvm use,它将从您的.nvmrc中获取节点版本,您可以在此终端会话中处理该项目。 与另一个项目相同-nvm use,并在此终端会话中工作。

  2. 便捷但不可靠的方式: 这不是不可靠的可靠方式,因为并非所有开发人员都在此处$HOME/.nvm/nvm.sh完全拥有nvm,而且我不喜欢这种nvm路径的硬编码,因为它看起来像是一些肮脏的hack。 遵循此thread中的答案并获得一些解决方法。这意味着,对于我个人的本地开发而言,它将起作用(我已经尝试了该线程,并且由于该错误而无法起作用,并且我不知道这意味着什么)

      

    $ source $ HOME / .nvm / nvm.sh && nvm use && nodemon ts-node -r   tsconfig-paths / register src / main.ts nvm与   “ PREFIX”环境变量:当前设置为“ / usr / local”运行   unset PREFIX取消设置。

  3. 采用package.json方式的引擎

我尝试将"engines": {"node" : "10.14.1"},写到package.json中,但是当我开始执行yarn时-节点尚未更改为10.14.1(它已经安装在我的笔记本电脑上)

仅在运行yarn start时,我就不知道其他任何方式来方便,可靠地更改节点版本。你知道吗还是您可能知道一些最佳做法?

1 个答案:

答案 0 :(得分:0)

一段时间后,我重新安装了操作系统,并尝试使用ZSH终端。有 zsh-nvm 插件,每次执行 cd 时,该插件都会检查.nvmrc。方便。到目前为止很好。