我试了一下:
sudo npm cache clean -f
sudo npm install -g n
sudo n stable
...但这并没有起作用。
如何在Windows上做到这一点?
我试了一下:
sudo npm cache clean -f
sudo npm install -g n
sudo n stable
...但这并没有起作用。
如何在Windows上做到这一点?
当前回答
我遵循josh3737并从Node.js主页安装了最新的MSI。
但我有一个额外的问题,我仍然在命令行上使用旧版本的Node.js和npm。这个问题是由新安装引起的,而且是安装进去的
C:\Program Files (x86)\nodejs\
而不是以前的安装中
C:\Program Files\nodejs\
新安装在旧目录之后将新目录添加到我的path变量中。所以旧的装置仍然是路径上的活动装置。将C:\Program Files\nodejs\从系统路径中删除,并将c:\ users \…\AppData\Roaming\npm从用户路径重新启动命令行,新的安装是活动的。
可能最小路径是本地问题,与新安装无关。我有两个链接到AppData\Roaming\npm。也许这个问题也可以通过先卸载Node.js然后再安装新版本来解决。
其他回答
就我而言,我发现我安装了两个Node.js副本。一个在“C:\Program Files\nodejs”下,另一个在“C:\Program Files (x86)\nodejs”下。
好了,朋友们,我阅读了(在Windows上尝试了)之前所有的东西,所有这些答案都有自己的缺点。
关于更新Node.js的最佳方法(至少对我来说),请访问https://nodejs.org/en/ 然后下载最后一个版本,并将其安装到您在1分钟内安装前一个版本的相同文件夹中,这样就完成了。您不需要删除任何旧文件。
然后更新npm输入cmd: npm install——save latest-version
以管理员身份打开PowerShell。
要安装第一次,您可以使用这个小脚本下载最新的msi并运行它
$nodeLatest=((curl https://nodejs.org/download/release/latest/).Content | findstr x64.msi) -replace "<(.*?)>", "" -replace "\s+.+", "";
wget "https://nodejs.org/download/release/latest/$nodeLatest" -OutFile (join-path $env:TEMP node.msi); Start-Process (join-path $env:TEMP node.msi)
在未来的升级中,你可以下载node.exe并更新npm
wget https://nodejs.org/download/release/latest/win-x64/node.exe -OutFile 'C:\Program Files\nodejs\node.exe'
npm i -g npm
现在你应该有了最新的节点和npm。
我更进一步,决定为Windows实现一个nvm。
https://github.com/brunolm/nvm
Install-Module -Name power-nvm
nvm install latest
nvm default latest
不管怎样,我必须把几个答案结合起来……
在控制面板中卸载Node.js。 删除目录C:\Program Files (x86)\nodejs\和C:\Program Files\nodejs\(如果存在)。 安装最新版本http://nodejs.org/download/
前面的答案适用于安装一个新版本的Node.js(可能是最好的选择),但如果你依赖于特定的Node.js版本,那么下面的答案也适用:"npm install npm -g"。在命令前后运行npm -v进行验证。