2013-03-08 50 views
2

我想执行EJS模板的node.js的一个简单的例子。节点,或者更确切地说,无论我做什么,都无法使用layout.ejs呈现索引页,如下面的代码所示。layout.ejs没有呈现 - Node.js,Express

这里的app.js

var express = require('express') 
    , routes = require('./routes') 
    , http = require('http'); 

var app = express(); 

app.configure(function(){ 
    app.set('port', process.env.PORT || 8001); 
    app.set('views', __dirname + '/views'); 
    app.set('view engine', 'ejs'); 
    app.set('view options', {layout: 'views/layout.ejs'}); 
    app.use(express.favicon()); 
    app.use(express.logger('dev')); 
    app.use(express.bodyParser()); 
    app.use(express.methodOverride()); 
    app.use(app.router); 
    app.use(express.static(__dirname + '/public')); 
}); 

app.configure('development', function(){ 
    app.use(express.errorHandler()); 
}); 

app.get('/', routes.index); 


http.createServer(app).listen(app.get('port'), function(){ 
    console.log("Express server listening on port " + app.get('port')); 
}); 

layout.ejs

<!DOCTYPE html> 
<html> 

<head> <title><%= title %></title> </head> 

<body> <%- body %> </body> 

</html> 

而在index.ejs,它只是这个

<p> Some Text </p> 

我错过了一些东西在这里?

+4

布局在快车3被删除,请参阅http://stackoverflow.com/questions/12616694/layouts-in-express-3-and-ejs – robertklep 2013-03-08 08:49:18

+0

请看以下问题: http://stackoverflow.com/questions/12616694/layouts-in-express-3-and-ejs – 2013-03-08 10:21:01

+0

我的回答对你有帮助吗? – jemiloii 2014-08-18 14:55:08

回答

3
app.set('view options', { layout:'layout.ejs' }); 

删除的意见/和它应该工作。