Files
lingji-work-fe/src/App.vue

64 lines
1.6 KiB
Vue
Raw Normal View History

2025-06-16 14:42:26 +08:00
<template>
<ConfigProvider :autoInsertSpaceInButton="false" :locale="zhCN" :theme="redTheme">
<router-view v-if="$route.meta.withoutLayout" />
2025-06-17 11:18:39 +08:00
<LayoutBasic v-else />
2025-09-05 17:45:12 +08:00
</ConfigProvider>
2025-06-16 14:42:26 +08:00
</template>
2025-07-18 17:10:12 +08:00
<script setup>
import { useUserStore } from '@/stores';
2025-09-07 17:19:51 +08:00
// import { useChatStore } from '@/stores/modules/chat';
2025-09-19 09:40:06 +08:00
import { useRoute } from 'vue-router';
import { handleUserHome, initApp } from '@/utils/user';
2025-07-18 17:10:12 +08:00
import { useSidebarStore } from '@/stores/modules/side-bar';
2025-09-19 09:40:06 +08:00
import { useEnterpriseStore } from '@/stores/modules/enterprise';
2025-07-07 18:17:31 +08:00
2025-09-05 17:45:12 +08:00
import { ConfigProvider } from 'ant-design-vue';
import zhCN from 'ant-design-vue/es/locale/zh_CN';
2025-09-07 17:19:51 +08:00
import 'dayjs/locale/zh-cn';
2025-07-07 18:17:31 +08:00
2025-06-23 23:59:08 -04:00
const userStore = useUserStore();
2025-09-19 09:40:06 +08:00
const route = useRoute();
2025-07-18 17:10:12 +08:00
const sidebarStore = useSidebarStore();
2025-09-07 17:19:51 +08:00
// const chatStore = useChatStore();
2025-09-19 09:40:06 +08:00
const enterpriseStore = useEnterpriseStore();
const redTheme = {
token: {
colorPrimary: '#6d4cfe', // 主色
colorLink: '#f5222d', // 链接色
},
};
2025-07-07 18:17:31 +08:00
const init = async () => {
2025-08-28 12:03:52 +08:00
const { isLogin } = userStore;
2025-07-07 18:17:31 +08:00
if (isLogin) {
2025-08-28 12:03:52 +08:00
await initApp();
2025-09-19 09:40:06 +08:00
if (enterpriseStore.isOpenEnterprise && route.name === 'Trial') {
handleUserHome();
}
2025-07-18 17:10:12 +08:00
} else {
sidebarStore.stopUnreadInfoPolling();
}
};
2025-06-16 14:42:26 +08:00
onMounted(() => {
init();
2025-06-16 14:42:26 +08:00
// 监听全局未处理错误
window.addEventListener('unhandledrejection', (event) => {
event.preventDefault();
console.log(event);
console.error(`发现catch报错${event.reason}`);
});
});
2025-07-18 17:10:12 +08:00
onUnmounted(() => {
2025-08-14 09:49:55 +08:00
sidebarStore.stopUnreadInfoPolling();
2025-07-18 17:10:12 +08:00
});
2025-06-16 14:42:26 +08:00
</script>
<style lang="scss">
@import './styles/index.scss';
</style>