确定用户是否已登录时。我检查了一个cookie(不知道这是否是检查登录用户的正确方法)。
该功能如下所示:
$(document).ready(function() {
function gotCookie(){
if($.cookie("token") == null){
console.log("User is not logged in");
<% var loggedIn = false %>
<% var username = null %>
//return 0;
}
if($.cookie("token") != null){
console.log("User is logged in");
<% var loggedIn = true %>
//return 1;
var user = $.cookie("username");
<% var username = user %>
}
}
gotCookie();
});
在我的文件中,我执行此操作:
<ul class="nav navbar-nav navbar-right">
<li class="dropdown">
<a href="#" class="dropdown-toggle" data-toggle="dropdown">
<%= username %> <b class="caret"></b>
</a>
<ul class="dropdown-menu">
<li><a href="/myuploads">My Uploads</a></li>
<li class="divider"></li>
<li><a id="logout">Logout</a></li>
</ul>
</li>
<li><a href="/profile"><span class="visible-sm visible-xs">Settings<span class="fui-gear"></span></span><span class="visible-md visible-lg"><span class="fui-gear"></span></span></a>
</li>
</ul>
<% } if(loggedIn == false) { %>
<form class="navbar-right">
<ul class="nav navbar-nav">
<a class="btn btn-primary navbar-btn" href="/login">Login</a>
<a class="btn btn-primary navbar-btn" href="/register">Register</a>
</ul>
</form>
<% } %>
我遇到的问题是即使我成功删除了令牌的cookie,“我的上传”和“退出”的按钮仍然可见。
有谁知道为什么会这样?