在客户端ejs中,我使用[% code %]而不是<% code %>标记ejs代码,但我想在服务器端使用express进行相同的操作。在客户端,我会做类似var template = new EJS({text: template_src, type:'['});的操作

这是我的节点代码:

app.set('view engine', 'ejs');
app.register('.html', require('ejs'));

app.get('/', function(req, res){
    res.render('index.html', { title: 'My Site' });
});


您在哪里设置“类型”参数,以便我可以更改此选项

最佳答案

From the EJS github page:


  自定义标签也可以全局应用:


var ejs = require('ejs'); ejs.open = '{{'; ejs.close = '}}';


要做的唯一一件事就是在Express应用程序的开头复制这些行,就是这样-更改将全局应用(将open和close标签更改为所需的任何内容)。

截至2016年7月20日的最新版本更新

从EJS的最新版本开始,将无法再使用自定义标签(请参见https://github.com/mde/ejs/issues/55)。您所要做的就是将分隔符从默认的%更改为其他分隔符(delimiter选项)。
有关重新启用此功能的讨论。请参见https://github.com/mde/ejs/issues/88https://github.com/mde/ejs/issues/115

关于node.js - 更改express + node.js + ejs的代码包装器类型,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/8021070/

10-09 20:27
查看更多