2014-02-20 47 views
2
var express = require('express'); 
var app = express(); 
app.get('/', function(req, res){ 
    res.send('hello world'); 
}); 
app.listen(3000); 

我收到以下错误消息。快递未在快递中定义

> D:\nodejs\mynode\index.js:2 
> var app=express(); 
    ^
ReferenceError: express is not defined 
    at Object.<anonymous> (D:\nodejs\mynode\index.js:2:9) 
    at Module._compile (module.js:456:26) 
    at Object.Module._extensions..js (module.js:474:10) 
    at Module.load (module.js:356:32) 
    at Function.Module._load (module.js:312:12) 
    at Function.Module.runMain (module.js:497:10) 
    at startup (node.js:119:16) 
    at node.js:902:3 
+0

在尝试加载模块之前是否运行'npm install express'? –

+0

是的,我安装了,但它不工作 – user3331384

+1

在你的终端上使用'sudo npm install -g express'命令来安装express模块​​。 –

回答

2

应该进入你的代码目录并在shell中使用“npm install”!

+0

是的,我做到了,但没有工作 – user3331384

+0

您是否成功安装了所有node_modules?你的系统是什么?视窗? Linux呢?或MacOS?当您安装依赖关系时,您可能会发现安装过程中出现了什么问题!华林?或错误? – jingyinggong

+0

现在我解决了我的问题...谢谢你的建议 – user3331384

1

使用此命令在终端故宫安装快车

确保您的项目文件夹

8

内安装对于使用表达,你需要遵循以下步骤:

1)基本设置与快递

也许你得使用sudo

npm install -g express

该命令将全局安装express。 你现在也可以在命令行上使用express。

您现在可以使用express来使用此命令设置基本环境。

express [options] [dir]

选项:

-h, --help   output usage information 
-V, --version  output the version number 
-s, --sessions  add session support 
-e, --ejs   add ejs engine support (defaults to jade) 
-J, --jshtml  add jshtml engine support (defaults to jade) 
-H, --hogan   add hogan.js engine support 
-c, --css <engine> add stylesheet <engine> support (less|stylus) (defaults to plain css) 
-f, --force   force on non-empty directory 

2)用的package.json基本设置

创建两个文件:

package.json

index.js

package.json包含大量的项目信息。

这是一个例子的package.json:

{ 
    "name": "MyProject", 
    "version": "0.0.1", 
    "private": true, 
    "dependencies": { 
     "express": "~3.4.4" 
    } 
} 

如果你现在加入您的项目文件夹,运行 npm install

NPM将查找"dependencies"并安装它们。

现在打开你的index.js并写下面。

var express = require('express'); // Get the module 
var app = express(); // Create express by calling the prototype in var express 
1

请检查文件权限。也可能是您的用户登录没有权限在系统中进行更改。如果您使用的是ubuntu或不是root用户,则可能必须在命令之前使用sudo。