Nodejs ejs 如何添加注释?
Nodejs ejs 如何添加注释?
我想添加注释,但是又不会被输出到HTML中. 网上看到<%# %>我用后报错,说有不合法的东西在文件中。
当然可以。在 EJS 模板引擎中,你可以通过特定的语法来添加注释,这些注释不会被渲染到最终的 HTML 中。你提到的 <%# %> 语法实际上是在其他模板引擎(如 ASP.NET Web Forms)中使用的,而不是 EJS。
在 EJS 中,你可以使用 <% // %> 或者 <%- // %> 来添加单行注释。如果你想添加多行注释,可以使用 <% /* */ %> 的方式。下面是具体的示例:
单行注释
<%- // 这是一个单行注释,它不会出现在最终的 HTML 输出中 %>
<p><%= user.name %></p>
多行注释
<%
/*
这是一个多行注释,
同样不会出现在最终的 HTML 输出中。
*/
%>
<p><%= user.name %></p>
示例代码
假设你有一个简单的 EJS 模板文件 index.ejs,内容如下:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>EJS Comments Example</title>
</head>
<body>
<h1>Welcome to My Website</h1>
<!-- 使用单行注释 -->
<%- // 这是一个单行注释 %>
<p><%= user.name %></p>
<!-- 使用多行注释 -->
<%
/*
这是一个多行注释
*/
%>
<p><%= user.email %></p>
<p><%= user.age %></p>
</body>
</html>
在这个例子中,用户信息(name, email, age)将正常显示在 HTML 页面中,而注释部分则不会出现在最终的 HTML 输出中。
希望这能帮助你理解如何在 EJS 中添加注释。如果你有任何其他问题或需要进一步的帮助,请随时告诉我!
奇怪 README 上没写 <%# %> 呀… 要不用 HTML 的注释语法吧
EJS 推荐用HTML 的注释语法
visionmedia commented 8 months ago
<!-- some comment -->
<%
/*
注释,神马都行,写多少行都行……………………
*/
%>
我最后也是这么写的。
这样注释会被输出到HTML的
赞
只有 /* */ 这一种吗?
我记得有过建议是使用 // 而不是 /* */ 因为可能会有符号冲突。
<!–这个不就可以么–>
在 EJS 模板引擎中,你可以使用 <% // your comment %> 或 <%- // your comment %> 来添加注释。这些注释不会被输出到最终的 HTML 中。<%-%> 和 <%- 用于转义输出,但如果你只是想写注释,使用 <% // your comment %> 就足够了。
示例代码:
<%- /* 这是多行注释 */ -%>
<ul>
<% users.forEach(function(user) { %>
<li>
<!-- 这是单行注释 -->
<%- user.name %> <!-- 输出用户名称 -->
</li>
<% }); %>
</ul>
<% // 这也是单行注释 %>
解释
<%- /* 多行注释 */ -%>: 用于多行注释,通常在模板开始处。<!-- -->: HTML 注释,会在页面源码中显示,但不会被浏览器渲染。<% // 单行注释 %>: EJS 单行注释,不会出现在最终生成的 HTML 中。
请注意,<%# %> 是错误的语法,EJS 不支持这种注释方式。正确的注释方法如上所示。

