节点JS – Express JS – TypeError:对象#<对象>没有方法'编译'

我创build了一个使用节点(0.5.7),express(2.3.9)和ejs(1.0)的testing代码。 这里是示例代码

core.js

var express = require('express'); var http = require('http'); var ejs = require('ejs'); var app = express.createServer(); app.set('views', __dirname + '/views'); app.set( "view engine", "ejs" ); app.get('/', function(req, res) { res.render('index'); }); app.listen(8000); console.log('Listening 8000'); 

提到的是ejs文件所在的path – > views / index.ejs

我得到错误“TypeError:对象#没有方法”编译“”

你能帮我什么解决scheme将是最适用的在这里?

可能是错误的是,2.3.9的快速版本与0.5.7节点(这是0.6.x系列中的一个不稳定的分支)不兼容,因此您应该使用稳定版本的0.4.x系列节点来尝试。 从快递文档:

Express 1.x与节点0.2.x兼容并连接<1.0。

Express 2.x与节点0.4.x兼容并连接1.x

Express 3.x(主分支)与节点0.6.x兼容并连接2.x

在使用express来创build骨架项目时,请确保遵循这些说明,特别是使用npm install来安装依赖关系的部分。

创build应用程序:

 $ npm install -g express $ express /tmp/foo && cd /tmp/foo 

安装依赖关系:

 $ npm install 

启动服务器:

 $ node app