Javascript 在ejs中使用保留字

Javascript 在ejs中使用保留字,javascript,ejs,Javascript,Ejs,如果我尝试编译一个EJS模板,如下所示: var data = { case: 'Something' }; var html = ejs.render('Case <%= case %>', data); var data={case:'Something'}; var html=ejs.render('Case',data); 我得到一个错误: ejs.js:550 Uncaught SyntaxError: Unexpected token case while compi

如果我尝试编译一个EJS模板,如下所示:

var data = { case: 'Something' };
var html = ejs.render('Case <%= case %>', data);
var data={case:'Something'};
var html=ejs.render('Case',data);
我得到一个错误:

ejs.js:550 Uncaught SyntaxError: Unexpected token case while compiling ejs

If the above error is not helpful, you may want to try EJS-Lint:
https://github.com/RyanZim/EJS-Lint
    at new Function (<anonymous>)
    at Template.compile (ejs.js:550)
    at Object.compile (ejs.js:359)
    at handleCache (ejs.js:202)
    at Object.exports.render (ejs.js:385)
    at VM546 script.js:2
ejs.js:550未捕获的语法错误:编译ejs时出现意外的令牌情况
如果上述错误没有帮助,您可能希望尝试EJS Lint:
https://github.com/RyanZim/EJS-Lint

在新函数中(

它看起来像EJS,还设置了一个名为
局部变量的上下文,该上下文被传递

所以

var html=ejs.render('Case',data)

您可以将数据放在对象文本中,…例如,
ejs.render('Case',{data:data});
我已经在@Keith做这项工作了,只是想知道是否还有其他方法。由于这也是Javascript EJB编译,您可以尝试
[“Case”]
@Keith它不起作用,JavaScript认为是数组文字。如果需要,可以使用我刚才添加的Plunker链接来使用它。try->
var html=ejs.render('Case',data);
  var html = ejs.render('Case <%= locals.case %>', data)