在Express.js应用程序中注册模板引擎csv
,你只需添加一行
ejs
如何指定ejs https://github.com/mde/ejs#options支持的其他选项(例如,我想要app.set('view engine', 'ejs');
),以便每个rmWhitespace: true
都可以使用它们?
更新: 当前设置:
res.render()
和`./views/root.ejs'
...
app.set('view engine', 'ejs');
app.set('views', __dirname + '/views');
app.locals.rmWhitespace = true;
app.get('/', function (req, res) {
res.render('root', { name: 'Test' });
});
答案 0 :(得分:1)
来自文档:ejs.render(str, data, options);
app.get('/', function (req, res) {
res.render('root', { name: 'Test' }, rmWhitespace);
});
答案 1 :(得分:1)
您的原始语法现在有效:
app.set('view engine', 'ejs');
app.locals.rmWhitespace = true;
由于v2.3.4中修复了一个错误,因此在您提出问题时它无法正常工作:https://github.com/mde/ejs/commit/ea0fa32e27a13b9b77970b312699ff117aa56e59
如果没有此修复程序,rmWhitespace
未被识别为“选项”,因此data
未被opts
从Ext.define('User', {
extend: 'Ext.data.Model',
fields: [
{name: 'name', type: 'string'},
{name: 'phoneNumber', type: 'string'}
]
});
拉出var data = {
users: [
{
name: 'Ed Spencer',
phoneNumber: '555 1234'
},
{
name: 'Abe Elias',
phoneNumber: '666 1234'
}
]
};
方法
答案 2 :(得分:0)
我使用swig(ejs的替代品)也遇到了同样的问题。 我想你可以直接要求ejs并设置它的选项。例如:
buildings
答案 3 :(得分:0)
您可以设置中间件
app.use(function(req, res, next){
res.locals.rmWhitespace = true;
next();
});
将本地设置为res.locals
在此设置文档here