将Express与Node.js一起使用时出错
我用npm express写了一个小程序。当我运行程序时,我遇到如下错误。(我是node.js新手)将Express与Node.js一起使用时出错,node.js,express,Node.js,Express,我用npm express写了一个小程序。当我运行程序时,我遇到如下错误。(我是node.js新手) module.js:340 犯错误; ^ 错误:找不到模块“express” 在Function.Module.\u解析文件名(Module.js:338:15) 在Function.Module.\u加载(Module.js:280:25) at Module.require(Module.js:362:17) 根据需要(module.js:378:17) 反对。(C:\Users\node\
module.js:340
犯错误;
^
错误:找不到模块“express”
在Function.Module.\u解析文件名(Module.js:338:15)
在Function.Module.\u加载(Module.js:280:25)
at Module.require(Module.js:362:17)
根据需要(module.js:378:17)
反对。(C:\Users\node\node\u modules\app.js:1:77)
在模块处编译(Module.js:449:26)
在Object.Module._extensions..js(Module.js:467:10)
在Module.load(Module.js:356:32)
在Function.Module.\u加载(Module.js:312:12)
位于Module.runMain(Module.js:492:10)
在你的应用程序中,你显然需要快速模块,可能是这样的:
var express = require('express');
要使这一行正常工作,您需要将Express安装到应用程序的本地上下文中。要这样做,请运行
$ npm install express
在应用程序的文件夹中。这将(如果它还不存在的话)创建一个文件夹node\u modules
,其中包含所有依赖项
此外,我建议您将Express放入包.json
中的依赖项
块中,例如:
"dependencies": {
"express": "3.1.0"
}
当然,您可以将版本号调整为您使用的任何版本。对所有依赖项执行此操作后,只需运行
$ npm install
这应该可以解决问题
PS:在这种情况下,您是否在全局安装了Express并不重要。全局安装仅适用于系统范围内可用的express
引导程序。require
功能始终仅在本地应用程序上下文中搜索。在您的应用程序中,您显然需要express
模块,可能如下所示:
var express = require('express');
要使这一行正常工作,您需要将Express安装到应用程序的本地上下文中。要这样做,请运行
$ npm install express
在应用程序的文件夹中。这将(如果它还不存在的话)创建一个文件夹node\u modules
,其中包含所有依赖项
此外,我建议您将Express放入包.json
中的依赖项
块中,例如:
"dependencies": {
"express": "3.1.0"
}
当然,您可以将版本号调整为您使用的任何版本。对所有依赖项执行此操作后,只需运行
$ npm install
这应该可以解决问题
PS:在这种情况下,您是否在全局安装了Express并不重要。全局安装仅适用于系统范围内可用的express
引导程序。require
功能始终仅在本地应用程序上下文中搜索。似乎您还没有在本地node\u模块
文件夹中安装express
(也没有全局安装?)。。。您可以检查它是否在运行脚本的目录中安装了npm list
。我安装了npm express C:\Users\node\node\u modules>npm express-v 1.2.11我可以使用上述命令获取express的版本。。所以它被安装了…那是错误的安装位置。有关原因,请参见下面我的答案。如果它能回答你的问题,如果你能a)投票支持它,b)将它标记为答案,那就太好了。谢谢:-)您似乎还没有在本地节点模块
文件夹中安装express
(而且都不是全局安装的?)。。。您可以检查它是否在运行脚本的目录中安装了npm list
。我安装了npm express C:\Users\node\node\u modules>npm express-v 1.2.11我可以使用上述命令获取express的版本。。所以它被安装了…那是错误的安装位置。有关原因,请参见下面我的答案。如果它能回答你的问题,如果你能a)投票支持它,b)将它标记为答案,那就太好了。感谢:-)+1推荐package.json,如果OP决定部署到像heroku或nodejitsu这样的paas上,这会让他的生活更轻松。谢谢,但不仅如此,还有同事从源代码管理中签出项目(而且你肯定不想签入节点模块
文件夹).1推荐package.json,如果OP决定部署到像heroku或nodejitsu这样的paas上,这会让他的生活更轻松。谢谢,但不仅如此,还有同事从源代码管理中检查项目(而且你肯定不想检查节点\ u模块
文件夹)。