更新节点问题

时间:2016-06-25 18:15:16

标签: node.js

我正在尝试更新到版本6.2.2 of Node,并尝试了此SO answer中的说明,但是,当我键入node -v时,我仍然收到v.0.12.4。

以下是我采取的步骤和输出:

~ sudo npm cache clean -f
npm WARN using --force I sure hope you know what you are doing.
 ~ sudo npm install -g n
/usr/local/opt/nvm/versions/node/v0.12.4/bin/n -> /usr/local/opt/nvm/versions/node/v0.12.4/lib/node_modules/n/bin/n
n@2.1.1 /usr/local/opt/nvm/versions/node/v0.12.4/lib/node_modules/n
 ~ sudo n stable
 ~ node -v
v0.12.4
 ~ sudo n 6.2.2
 ~ node -v
v0.12.4

当我尝试使用brew升级节点时,我得到了以下内容:

 ~ brew upgrade node
Error: node 6.2.2 already installed

我想确保我的应用仅使用版本6.2.2(很高兴摆脱旧版本)。当我在我的应用程序上运行npm start时,出现使用ES6语法的错误:

/Users/.../modules/edu.js:28
let x=2;
SyntaxError: Unexpected identifier
    at exports.runInThisContext (vm.js:73:16)
    at Module._compile (module.js:443:25)

感谢任何帮助!

2 个答案:

答案 0 :(得分:1)

之前我遇到过这个问题,并意识到我的计算机上安装了两个不同位置的节点。命令行从其输出的版本输出的那个不是我刚刚安装的那个。我通过确保指定命令行读取版本的同一位置的安装路径来修复它。对我来说,在Windows 10上,它是从Program Files(x86)文件夹而不是节点保持安装到的常规Program Files文件夹中读取它。检查您的驱动器,看看您是否有其他可以全局安装节点的地方,然后如果是这样,您可以指定该文件夹的安装路径。

答案 1 :(得分:0)

我使用:

更新了nvm
curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.31.2/install.sh | bash

来源:https://github.com/creationix/nvm/blob/master/README.markdown

现在它正在使用最新版本的节点。请注意它为我提供了我需要删除的目录的路径,以便当我第一次尝试运行它时curl工作,我不得不重建一个npm包(我试图运行gulp时发现)