Node.js - 使用 NVM 配置 $NODE_PATH

Node.js - Configuring $NODE_PATH with NVM

本文关键字:NODE PATH 配置 NVM js 使用 Node      更新时间:2023-09-26

在我用NVM设置Node.js的路上,我在使用Yeoman时偶然发现了一个错误。我得到了错误

Cannot find module 'yeoman-generator'

经过一番研究,我在StackOverflow上找到了这篇文章,这也是关于我的问题。现在我尝试这样做,但我遇到的问题是,我想使用不同版本的 Node.js 使用 NVM 在系统上。现在,如果 Node.js 版本在 NVM 的帮助下发生变化,是否可以动态更改 $NODE_PATH?因为我的 $NODE_PATH 目前是空的(这导致了问题)。

$ which node
/Users/dschmidt/.nvm/v0.10.35/bin/node
$ which npm
/Users/dschmidt/.nvm/v0.10.35/bin/npm
$ echo $NODE_PATH
[empty]

会很高兴我得到的每一个答案。我在网上搜索了这个,但找不到一个专门关于这个的帖子。

将以下内容添加到.bashrc.zshrc会有所帮助

export NODE_PATH=$NODE_PATH:`npm root -g`

我不是专家,这是否好。

彭西林音乐所指出的来源

NVM 将在您运行后设置节点和 npm 的路径

nvm use <node_version>

但是,这仅适用于当前 shell,除非设置默认版本,否则任何新 shell 都不会选择节点 npm 的版本,直到您运行上一个命令

nvm alias default <node_version>

瞧!你打开的任何新 shell 中都有一个 npm 和 node 的工作版本。

要更改默认值,只需使用您要使用的新版本节点再次运行它。

nvm alias default v5.4.0

我想到了一种方法来做到这一点。

~/.bash_rc文件或~/.zsh_rc中添加以下行:

export NODE_PATH=`which node`

打开新 shell 或运行此source ~/.bash_rc以获取更改

(取自GN.和Nick)对我来说很好用,但我需要将其添加到~/.bash_profile因为我在Mac上使用Bash作为shell。

export NODE_PATH=`which node`