2013-03-08 75 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' }); 

刪除的意見/和它應該工作。