fix
This commit is contained in:
@@ -103,6 +103,7 @@ import { ref, computed, onMounted } from "vue"
|
||||
import { Account } from "../api"
|
||||
import { loginModal } from "../store/modal"
|
||||
import { user } from "../store/user"
|
||||
import { router } from "../router"
|
||||
|
||||
// Tab state
|
||||
const activeTab = ref("student")
|
||||
@@ -190,6 +191,9 @@ async function submitStudent() {
|
||||
user.role = data.role
|
||||
user.loaded = true
|
||||
loginModal.value = false
|
||||
router.replace(
|
||||
window.location.pathname + window.location.search + window.location.hash,
|
||||
)
|
||||
} catch {
|
||||
showStudentError.value = true
|
||||
} finally {
|
||||
@@ -207,6 +211,9 @@ async function submitAdmin() {
|
||||
user.role = data.role
|
||||
user.loaded = true
|
||||
loginModal.value = false
|
||||
router.replace(
|
||||
window.location.pathname + window.location.search + window.location.hash,
|
||||
)
|
||||
} catch {
|
||||
showAdminError.value = true
|
||||
} finally {
|
||||
|
||||
@@ -3,6 +3,7 @@ import { loginModal } from "./store/modal"
|
||||
|
||||
import Workspace from "./pages/Workspace.vue"
|
||||
import { STORAGE_KEY } from "./utils/const"
|
||||
import { authed } from "./store/user"
|
||||
|
||||
const routes = [
|
||||
{ path: "/", name: "home", component: Workspace, meta: { auth: true } },
|
||||
@@ -75,7 +76,8 @@ export const router = createRouter({
|
||||
})
|
||||
|
||||
router.beforeEach((to) => {
|
||||
const isLoggedIn = localStorage.getItem(STORAGE_KEY.LOGIN) === "true"
|
||||
const isLoggedIn =
|
||||
authed.value || localStorage.getItem(STORAGE_KEY.LOGIN) === "true"
|
||||
if (to.meta.auth && !isLoggedIn) {
|
||||
loginModal.value = true
|
||||
return false
|
||||
|
||||
Reference in New Issue
Block a user