Я в замешательстве, если еще работает по-другому в EJS - PullRequest
0 голосов
/ 12 апреля 2020

Я хочу знать, что не так в этом коде. Я пытаюсь реализовать код входа в систему, и здесь я хочу, если есть условие, будет истинным, тогда только показывать выход из системы либо показывать логин или регистрацию

<% if(!currentUser) {%>
    <li><a href="/login">Login</a></li>
    <li><a href="/register">Register</a></li>
    <% } %>
    <% else { %>
    <li><a href="#">Signed In As : <%= currentUser.username %> </a></li>
    <li><a href="/logout">Logout</a></li>
<%}%>

Это неправильный код, который я выяснил, что вместо давая новую строку другому, если я сделаю это в одну строку, чем выполняется код, но это не так с js, только я хочу знать, что это значит, если я запускаю этот код, тогда он работает

<% if(!currentUser) {%>
    <li><a href="/login">Login</a></li>
    <li><a href="/register">Register</a></li>
    <% } else { %>
    <li><a href="#">Signed In As : <%= currentUser.username %> </a></li>
    <li><a href="/logout">Logout</a></li>
<%}%>

1 Ответ

2 голосов
/ 12 апреля 2020
<% } %>
<% else { %>

очень приблизительно эквивалентно:

}
document.write("\n    ");
else {

Но else должен следовать сразу за кадром после if (condition). Вы не можете иметь что-то, что пишет код перед этим.

...