在Windows 7中安装Express.JS的问题

Log*_*man 13 node.js express

我已经通过他们的网页上的安装程序安装了Node.js,并将其添加到我的环境变量的路径中,以便我可以使用nodenpm通过命令行.如果我制作一个快速应用程序,它可以工作,但我必须手动创建它.

我猜这很好,但我想知道为什么我不能使用express命令?我正进入(状态

`express` is not recognized as an internal or external command, operable program or batch file.
Run Code Online (Sandbox Code Playgroud)

我注意到C:\ Username \node_modules中的快速安装,而不是我认为它会在C:\ Program Files\Nodejs \node_modules中安装.这是一个问题吗?

小智 31

在快速命令行的后续版本中,迁移到一个单独的模块:express-generetor

使用

npm install -g express-generator @ 3

并且可以使用express命令

  • 是的,实际上,如果你已经通过npm install express -g安装了正确的答案,-g可以生成模块文件夹,但是没有提供快递命令,你需要为它安装生成器,当前版本是4. (2认同)

Mic*_*ets 5

虽然这不一定是个问题,但它很烦人,即使您可以浏览它也会出错.

虽然您可以引用其他节点模块,即使它们不在节点目录中,但据我所知,节点要求模块node_modules位于Nodejs目录中的文件夹中以便自动查找它们.(我在osx上有类似的问题,这个方法解决了它.)

尝试移动内容

C:\Username\node_modulesC:\Program Files\Nodejs\node_modules\

或者,

您还可以使用以下命令全局安装模块

npm install express -g
Run Code Online (Sandbox Code Playgroud)

这允许您访问它们而不必担心您的节点目录,虽然这些更难以管理,"如果可以,您应该尽量避免".

从节点博客:

就像全局变量有点粗略,但在某些情况下也是必要的,全局包很重要,但如果不需要,最好避免使用.

一般来说,经验法则是:

如果您要在程序中安装要使用的东西,请使用require('whatever'),然后在项目的根目录下在本地安装.如果您要在shell中安装要在shell中使用的东西,请在命令行或其他东西上安装它,以便全局安装它,以便它的二进制文件最终位于PATH环境变量中.

资源