我有通常的 nodejs express 应用程序...
var express = require('express');
var app = express.createServer(
express.bodyParser()
);
app.configure( function () {
app.set('views', __dirname + '/views');
app.set('view engine', 'ejs');
app.use("/public", express.static(__dirname + '/public'));
});
app.get('/', function (req, res) {
res.render('index');
});
我在 /views 文件夹中有一个 index.ejs 和 layout.ejs:
布局.ejs:
<!doctype html>
<html lang="en" manifest=""><head>
<title>jQuery Plugin Demo</title>
</head>
<body>
<div class="container container-fluid">
<%- body %>
</div>
</body>
</html>
索引.ejs:
Hello world
index.ejs 仅呈现“Hello world”文本,而没有周围的 layout.ejs 包装器。ejs 正在工作。它能够找到正确的 .ejs 模板,但它只是忽略了布局。我也尝试过将布局文件显式添加到应用程序..
app.set('view options', { layout:'layout.ejs' });
所有这些在本地都可以正常工作,但在 Heroku 上却不行。这是我的 package.json:
{
"name": "in1-test",
"version": "0.0.1",
"author": "Iatek",
"dependencies": {
"express": ">=2.5.x",
"ejs": ">=0.7.x"
},
"engines": {
"node": "0.6.x"
}
}
为什么布局上没有乐趣???谢谢