我对nodejs完全不熟悉。我试图让nodejs在我的Windows 2008盒子上工作,以安装Karma,我将用于TDDing我的AngularJs代码。到目前为止,我已经完成了以下步骤

Install using Chocolatey ==> npm is not recognised Install using 64-bit nodejs installer from nodejs.org ==> npm is not recognised At this stage, running where npm gives me c:\User\<Username>\AppData\Roaming\npm which has nothing in it I figure out that nodejs is installed in C:\Program Files\nodejs. Opening a command prompt in this directory makes npm work fine. So I added C:\Program Files\nodejs to PATH only to get the same error again that npm is not recognized One of the github issues on nodejs repository says that I need to restart the machine and it would fix. But that has not helped so far I do see a Node.js icon in my Start -> Programms mennu which takes me to nodejs console but not sure what to do with that.

在这个过程中,我是否错过了任何重要的步骤?

Edit

我发现如果我从程序文件中打开“Nodejs命令提示符”,那么npm是可以识别的。如何让它在正常的命令提示符下工作?

Edit

在node之后,我开始在另一个应用程序中遇到类似的问题。我在超级用户上发布了这个问题,正如被接受的答案所正确指出的那样,我在我的PATH中有一个额外的引用,这导致了引用后添加的所有路径出现问题。我有一种感觉,一些Chocolatey安装添加了这句令人不安的引用,但我只是不确定是哪一个。


当前回答

我也遇到过这个问题。事实证明,Windows不喜欢在命令行上使用单引号。罪魁祸首是我的一个npm脚本。我把单引号改成了转义双引号:

'npm -s run sass-build'

to

\"npm -s run sass-build\"

其他回答

有一天,我在自己的Windows 7电脑上遇到了这个问题。问题不在于我的路径,而是我必须使用转义的正斜杠而不是反斜杠,就像这样:

"scripts": {
    "script": ".\\bin\\script.sh"
}

安装node后,不要忘记重新启动计算机!这句话难倒了我。

对我来说,将path添加到path并没有达到目的。 运行c:\Program Files\nodejs\ nodevars.bat,它将为您完成这项工作

如果你使用ms build工具安装node,路径如下:

C:\Program Files (x86)\Microsoft Visual Studio\2019\BuildTools\MSBuild\Microsoft\VisualStudio\NodeJs

在我的机器(windows)上用nvm安装node后,我遇到了同样的问题。env变量中的路径包含以下内容:

C:\Users\amohanan\AppData\Roaming\nvm C:\Program Files\nodejs

通过从路径中删除c:\ users \amohanan\ appdata \ roam \nvm并重新启动cmd来解决我的问题。