diff --git a/src/App.vue b/src/App.vue index fda8116..b8a060f 100644 --- a/src/App.vue +++ b/src/App.vue @@ -12,21 +12,24 @@ :router="true" > 首页 - + 社团文化节 - + - + + - - {{ userInfo.name }} - @@ -34,6 +37,9 @@ + + {{ userInfo.name }} + 登录 @@ -56,7 +62,6 @@ min-height: 100vh; } .app-header { - --header-height: 50px; --el-header-height: var(--header-height); --el-loading-spinner-size: 30px; background-color: white; @@ -75,7 +80,6 @@ } .app-main { padding: 0; - flex: 1; display: flex; } .app-header-user { @@ -94,15 +98,13 @@ .app-router-view-leave-to { opacity: 0; } -.app-router-component__wrapper { - flex: 1; -} diff --git a/src/assets/global.scss b/src/assets/global.scss index 721bb71..5c8e5a6 100644 --- a/src/assets/global.scss +++ b/src/assets/global.scss @@ -3,14 +3,16 @@ padding: 0; box-sizing: border-box; } - +:root { + --header-height: 50px; +} body { background-color: rgb(244, 246, 249); } #app { - width: 100vw; - height: 100vh; + min-width: 100vw; + min-height: 100vh; } .flex { display: flex !important; @@ -31,3 +33,7 @@ body { @extend .justify-center; @extend .align-center; } + +.el-main { + padding: 0 !important; +} diff --git a/src/router/index.ts b/src/router/index.ts index b6d6a9a..70e705f 100644 --- a/src/router/index.ts +++ b/src/router/index.ts @@ -10,6 +10,7 @@ declare module 'vue-router' { interface RouteMeta { permissionId?: RoutePermissionId; shouldLogin?: boolean; + routeId?: number; } } const routes: RouteRecordRaw[] = [ @@ -31,13 +32,10 @@ const routes: RouteRecordRaw[] = [ { path: '/2048', component: () => import('@/views/Game2048Page.vue'), - meta: { - shouldLogin: true, - }, }, { path: '/gobang', - component: () => import('@/views/Game2048Page.vue'), + component: () => import('@/views/GobangPage.vue'), meta: { shouldLogin: true, }, @@ -66,7 +64,7 @@ router.beforeEach(async (to) => { const succeed = await userStore.updateSelfUserInfo(true); if (!succeed) { if (permissionId === undefined) { - return; + return true; } return pageStore.createTempErrorRoute( { @@ -89,6 +87,7 @@ router.beforeEach(async (to) => { } finally { pageStore.removeRouteId(to); } + return true; }); router.afterEach((to) => { const pageStore = usePageStore(); diff --git a/src/stores/user.ts b/src/stores/user.ts index cbd866c..b12fe05 100644 --- a/src/stores/user.ts +++ b/src/stores/user.ts @@ -23,14 +23,15 @@ export const useUserStore = defineStore('user', () => { const logined = computed(() => userInfo.value && userInfo.value.id !== -1); watch( userInfo, - (info) => { - initializing.value = !!info; + () => { router.push({ path: router.currentRoute.value.fullPath, force: true }); }, { flush: 'sync' }, ); async function updateSelfUserInfo(showErrorMessage: boolean): Promise { initializing.value = true; + console.log('called'); + try { const raw = await axiosInstance .get('/api/user/info') diff --git a/src/views/GobangPage.vue b/src/views/GobangPage.vue new file mode 100644 index 0000000..2efec09 --- /dev/null +++ b/src/views/GobangPage.vue @@ -0,0 +1,39 @@ + + + + + 五子棋 + 单人游戏 + + + + + + +