如果不正确的用户使用 PassportJS 隐藏项目?

Hide item if not correct user using PassportJS?

我正在尝试弄清楚如何根据当前用户名隐藏某些内容。

如果用户不是 post 的创建者,我会尝试隐藏按钮。问题是我需要在循环之外执行此操作。我只需要按钮一次。如果用户是创建 post 的用户,我怎样才能在页面上显示只有该用户才能看到的对象

我下面的代码可以工作,我只需要它不在循环内即可。有什么想法吗?

<% menu.forEach(function(menu){ %>

                 <p>
                   <% if(currentUser && menu.author.id.equals(currentUser._id)){ %>
                    <a href="/menu/<%= menu.id %>" class = "btn btn-primary" > Edit</a>
                    <% } %>
                </p>
<% } %>

我简单地使用 return 解决了它。不确定这是最好的方法,但它有效:

  <% menu.forEach(function(menu){ %>
           <% if(currentUser && menu.author.id.equals(currentUser._id)){ %>
        <div> <a class="btn btn-lg btn-primary btn-block" href="menu/new"> Add an item to your menu </a> </div>


  <% return %>
     <% }%>
     <% }); %>