我已使用ubuntu
在我的nvm
系统中安装了节点。到目前为止它一直运作顺利,但是我的项目之一$ NODE_PATH已设置且nvm
没有设置它。
我会手动设置它,但我使用多个版本的节点。解决这个问题的最佳方法是什么。
我从终端命令
获得以下结果node -v
v8.9.1
npm -v
5.5.1
which node
/home/username/.nvm/versions/node/v8.9.1/bin/node
echo $NODE_PATH
[nothing]
nvm --version
0.33.6
nvm ls
-> v8.9.1
v9.0.0
default -> v8.9.1
six -> lts/boron (-> N/A)
node -> stable (-> v9.0.0) (default)
stable -> 9.0 (-> v9.0.0) (default)
iojs -> N/A (default)
lts/* -> lts/carbon (-> v8.9.1)
lts/argon -> v4.8.6 (-> N/A)
lts/boron -> v6.12.0 (-> N/A)
lts/carbon -> v8.9.1
我读过其他类似的问题和答案但没有帮助。我已经尝试了像
这样的命令nvm use 8.9.1
nvm alias default 8.9.1
这些命令无法解决问题。
答案 0 :(得分:2)
(nvm维护者在这里)
nvm
故意不设置NODE_PATH
,因为它是反模式使用它 - 它允许您require
本地安装的东西。
您可以在运行nvm use
后自行手动设置,但根本不需要它。 nvm
没有提供任何挂钩来自动设置(按设计)。
因此,解决问题的最佳方法是重构您的项目,使其不再依赖于这个不赞成使用的功能,该节点本身并不会支持其本机ES模块实现。