在ejs模板中,通常会用下面四种方式在HTML中输出服务端的变量或表达式的值:
1. 直接在<%%>中写表达式或变量。这种情况通常只是用来进行表达式计算或给变量赋值,不会有任何输出,被称作无缓冲的代码。
<% code %>
2. 在<%%>中通过=号输出变量或表达式的值。默认输出到页面中的内容会进行HTML转义。如 <div>Hello</div> 输出后会变成 <div>Hello</div>
<%= code %>
3. 在<%%>中通过-号输出变量或表达式的值。内容不经任何转义直接输出到页面上。
<%- code %>
4. 在结束标记%>之前添加-号,这样输出的内容会自动带有HTML标记的缩进。如:
<% code -%> 或 <% -%> 或 <%= code -%> 或 <%- code -%>