如何使用EJS模板有条件地显示HTML?

如何使用EJS模板有条件地显示HTML?,html,node.js,ejs,Html,Node.js,Ejs,我尝试了以下条件,效果很好 <% if (user) { %> <h1> Success </h1> <% } else { %> <h1> Failure </h1> <% } %> 成功 失败 但是我想检查一下下面的情况 <% if (user.verified == true ) { %> <h1> Success </h1> <% } else

我尝试了以下条件,效果很好

<% if (user) { %>
  <h1> Success </h1>
<% } else { %>
  <h1> Failure </h1>
 <% } %>

成功
失败
但是我想检查一下下面的情况

<% if (user.verified == true ) { %>
  <h1> Success </h1>
<% } else { %>
  <h1> Failure </h1>
 <% } %>

成功
失败
它不工作,显示错误。
请任何人帮助我解决此问题。

您需要检查用户是否未定义。因此,代码应该是:

<% if (user && user.verified == true) { %>
  <h1> Success </h1>
<% } else { %>
  <h1> Failure </h1>
<% } %>

成功
失败

最后,我找到了一个解决方案

<% if(typeof (user) != "undefined"){ %>
        <h1>User Exists</h1>
<% } %>

用户存在
请注意,未定义的内容放在“”(引号)中。

仅供参考:

未定义、null“(空字符串)在中被视为false Javascript,但由于ejs中未定义,我仍然在这里遇到错误 文件


希望有帮助

如果
user.verified
true
boolean,则它应该可以工作