From bb195ab3dbdaecc8f4c6db0b4cecde6854ad0206 Mon Sep 17 00:00:00 2001 From: gerson <1405270578@qq.com> Date: 星期日, 30 六月 2024 10:18:20 +0800 Subject: [PATCH] login --- src/api/ai/user.ts | 31 +++++++++++++++++++++++++++++++ src/layout/component/sidebar/Sidebar.vue | 3 +++ src/layout/main/classic.vue | 21 ++++++++++++++++++--- 3 files changed, 52 insertions(+), 3 deletions(-) diff --git a/src/api/ai/user.ts b/src/api/ai/user.ts new file mode 100644 index 0000000..6b14b4f --- /dev/null +++ b/src/api/ai/user.ts @@ -0,0 +1,31 @@ +import request from '/@/utils/request'; +import { toFormData } from '/@/utils/util'; + +/** + * @summary description + */ +export const PostLogin = async (params, req: any = request) => { + return req({ + url: '/login', + method: 'POST', + data: params, + headers: { + 'Content-Type': 'application/x-www-form-urlencoded', + }, + }); +}; + + + + + + +/** + * @summary description + */ +export const PostLogout = async ( req:any = request) => { + return req({ + url: "/logout", + method: "POST", + }); +}; diff --git a/src/layout/component/sidebar/Sidebar.vue b/src/layout/component/sidebar/Sidebar.vue index 690bdf5..685c1b1 100644 --- a/src/layout/component/sidebar/Sidebar.vue +++ b/src/layout/component/sidebar/Sidebar.vue @@ -18,8 +18,11 @@ </template> <script setup lang="ts"> +import { onMounted } from 'vue'; import asideNew from './waterLeftAside/asideNew.vue'; import asideTitle from './waterLeftAside/asideTitle.vue'; +import { PostLogin } from '/@/api/ai/user'; + </script> <style scoped lang="scss"> diff --git a/src/layout/main/classic.vue b/src/layout/main/classic.vue index 8d4eeef..883426f 100644 --- a/src/layout/main/classic.vue +++ b/src/layout/main/classic.vue @@ -5,14 +5,29 @@ </template> <script setup lang="ts" name="layoutClassic"> -import { defineAsyncComponent, computed, ref, watch, nextTick, onMounted } from 'vue'; -import { useRoute } from 'vue-router'; import { storeToRefs } from 'pinia'; +import { computed, defineAsyncComponent, nextTick, onMounted, ref, watch } from 'vue'; +import { useRoute } from 'vue-router'; +import { PostLogin } from '/@/api/ai/user'; import { useThemeConfig } from '/@/stores/themeConfig'; + +const login = () => { + return PostLogin({ + user: 'tc', + pass: 'a', + }); +}; // 寮曞叆缁勪欢 -const LayoutMain = defineAsyncComponent(() => import('/@/layout/component/main.vue')); +const LayoutMain = defineAsyncComponent(async () => { + try { + await login(); + } finally { + // eslint-disable-next-line no-unsafe-finally + return import('/@/layout/component/main.vue'); + } +}); // 瀹氫箟鍙橀噺鍐呭 const layoutMainRef = ref<InstanceType<typeof LayoutMain>>(); -- Gitblit v1.9.3