EJS:<%= vs <% -

Mat*_*ins 10 ejs node.js

我正在使用EJS和我正在构建的Node.js Web服务器.我看到许多EJS示例有时<%=在输出HTML或字符串时使用,而其他示例(有时在同一模板中)使用<%-.

我试图引用EJS文档和入门指南,但两者都没有提供有关<%-表示法的信息.此外,我的Google搜索尝试没有任何用处.谢谢!

Mic*_*ley 16

您可能在Node中使用的EJS版本与您在Google代码中看到的版本不同; 在Node版本中,<%=转义HTML进入缓冲区,而<%-不是.资源

  • 嗨,我正在寻找同样的问题,但是“将 HTML 转义到缓冲区中”是什么意思?什么是缓冲区? (5认同)
  • @holyxiaoxin 'k   &lt;%= 中的 k' 将被写成 'k &amp;#160; k'。这将是 HTML 转义。在 &lt;%- 里面会产生一个空格 'kk' (3认同)

小智 9

来自http://ejs.co/:

<% 'Scriptlet' tag, for control-flow, no output
<%= Outputs the value into the template (HTML escaped)
<%- Outputs the unescaped value into the template
Run Code Online (Sandbox Code Playgroud)


小智 6

<%= *param* %>用于将数据从视图传输到控制器,反之亦然

while<%- %>是包含其他代码

对于我的项目来说是

在此输入图像描述