From c26a0c5e20dfdcc45b43315b50296e90e30995d8 Mon Sep 17 00:00:00 2001 From: wujingjing <gersonwu@qq.com> Date: 星期三, 07 五月 2025 11:41:53 +0800 Subject: [PATCH] 表格展示 --- src/layout/component/main.vue | 85 ++++++++++++++++++++++++++++++++++++++---- 1 files changed, 76 insertions(+), 9 deletions(-) diff --git a/src/layout/component/main.vue b/src/layout/component/main.vue index b42ba3d..3f70a1a 100644 --- a/src/layout/component/main.vue +++ b/src/layout/component/main.vue @@ -1,29 +1,74 @@ <template> - <el-main class="layout-main" :style="isFixedHeader ? `height: calc(100% - ${setMainHeight})` : `minHeight: calc(100% - ${setMainHeight})`"> + <el-main + class="layout-main" + :style="isFixedHeader ? `height: calc(100% - ${setMainHeight})` : `minHeight: calc(100% - ${setMainHeight})`" + > <el-scrollbar ref="layoutMainScrollbarRef" class="layout-main-scroll layout-backtop-header-fixed" - wrap-class="layout-main-scroll" - view-class="layout-main-scroll h100" + wrap-class="layout-main-scroll flex" + view-class="layout-main-scroll bg-[var(--color-bg-side)] flex h100 w-full" > - <LayoutParentView /> - <!-- <LayoutFooter v-if="isFooter" /> --> + <!-- <WorkSpaceMenu v-show="isWorkSpace" /> --> + <div v-show="isAskAnswer || isHome"> + <SideBar v-if="!isSharePage " :isShow="sidebarIsShow" @toggleSidebar="toggleSidebar" /> + <!-- <SidebarOther v-if="!isSharePage && !sidebarIsShow" :isShow="!sidebarIsShow" @toggleSidebar="toggleSidebar" /> --> + </div> + <GisMenu v-show="isGis" /> + + <div + class="flex-auto flex-col flex right-container" + :class="{ + // 'm-[6px]': !isSharePage, + // 'rounded-[10px]': !isSharePage, + 'bg-[var(--color-bg-side)]': !isSharePage, + 'bg-[#f7f8fa]': isSharePage, + }" + > + <Header v-if="!isSharePage" class="flex-0" :sidebarIsShow="sidebarIsShow" /> + <ShareHeader v-else class="flex-0"></ShareHeader> + <LayoutParentView class="flex-auto" /> + </div> + <Login v-show="isShowLogin" /> </el-scrollbar> <el-backtop :target="setBacktopClass" /> </el-main> </template> <script setup lang="ts" name="layoutMain"> -import { defineAsyncComponent, onMounted, computed, ref } from 'vue'; -import { useRoute } from 'vue-router'; import { storeToRefs } from 'pinia'; +import { computed, defineAsyncComponent, onMounted, ref } from 'vue'; +import { useRoute } from 'vue-router'; +import Header from './header/Header.vue'; +import ShareHeader from './header/ShareHeader.vue'; +import { selectFirstRoom, sidebarIsShow, toggleSidebar } from '/@/stores/chatRoom'; +import Login from './login/Login.vue'; +import SideBar from './sidebar/Sidebar.vue'; +import SidebarOther from './sidebar/SidebarOther.vue'; +import { isSharePage, isShowLogin } from '/@/stores/chatRoom'; import { useTagsViewRoutes } from '/@/stores/tagsViewRoutes'; import { useThemeConfig } from '/@/stores/themeConfig'; import { NextLoading } from '/@/utils/loading'; - +import { Local } from '/@/utils/storage'; +import WorkSpaceMenu from './sidebar/WorkSpaceMenu.vue'; +import GisMenu from './sidebar/GisMenu.vue'; +import router from '/@/router/index'; // 寮曞叆缁勪欢 const LayoutParentView = defineAsyncComponent(() => import('/@/layout/routerView/parent.vue')); const LayoutFooter = defineAsyncComponent(() => import('/@/layout/footer/index.vue')); + +const isWorkSpace = computed(() => { + return router.currentRoute.value.path.startsWith('/workspace'); +}); +const isAskAnswer = computed(() => { + return router.currentRoute.value.path.startsWith('/ask_answer'); +}); +const isHome = computed(() => { + return router.currentRoute.value.path.startsWith('/home'); +}); +const isGis = computed(() => { + return router.currentRoute.value.path.startsWith('/gis'); +}); // 瀹氫箟鍙橀噺鍐呭 const layoutMainScrollbarRef = ref(); @@ -32,7 +77,6 @@ const storesThemeConfig = useThemeConfig(); const { themeConfig } = storeToRefs(storesThemeConfig); const { isTagsViewCurrenFull } = storeToRefs(storesTagsViewRoutes); - // 璁剧疆 footer 鏄剧ず/闅愯棌 const isFooter = computed(() => { return themeConfig.value.isFooter && !route.meta.isIframe; @@ -56,10 +100,33 @@ // 椤甸潰鍔犺浇鍓� onMounted(() => { NextLoading.done(600); + selectFirstRoom(); }); // 鏆撮湶鍙橀噺 defineExpose({ layoutMainScrollbarRef, }); + +//#region ====================== 渚ц竟鏍忔樉绀洪殣钘� ====================== +// const sidebarIsShow = ref( true); +// const toggleSidebar = (val) => { +// sidebarIsShow.value = val; +// }; +//#endregion </script> + +<style scoped lang="scss"> +.right-container { + width: 100vw; + // margin: 0; + padding: 0; + overflow: hidden; + -webkit-box-sizing: border-box; + box-sizing: border-box; + // background-color: #1c1e1d; + font-family: 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif; + // margin: 6px; + // border-radius: 10px; +} +</style> -- Gitblit v1.9.3