slidev-addon-sm
Version:
slidev-addon slidev sm
37 lines (33 loc) • 1.2 kB
text/typescript
export function saveLoginInfo(uname: string) {
const nowUTC = Date.now();
localStorage.setItem("slidev_is_logged_in", "true");
// 存储后端返回的token(用于后续接口鉴权)
localStorage.setItem("slidev_username", uname);
localStorage.setItem("slidev_logged_in_time", nowUTC + "");
localStorage.setItem("slidev_logged_in_expire", 3600 * 24 + "");
console.log("save.");
}
export function isLoggedIn(): boolean {
if (
localStorage.getItem("slidev_is_logged_in") === "true" ||
localStorage.getItem("slidev_logged_in_time") === null ||
localStorage.getItem("slidev_logged_in_expire") === null
) {
const loginTime = parseInt(localStorage.getItem("slidev_logged_in_time")!);
const expireTime = parseInt(
localStorage.getItem("slidev_logged_in_expire")!
);
const nowUTC = Date.now();
if (nowUTC < loginTime + expireTime) {
return true;
} else {
clearLoginInfo();
}
}
return false;
}
export function clearLoginInfo() {
localStorage.removeItem("slidev_is_logged_in");
localStorage.removeItem("slidev_logged_in_time");
localStorage.removeItem("slidev_logged_in_expire");
}