123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778 |
- <template>
- <!-- <Drawer
- v-if="getIsMobile && getShowSidebar"
- placement="left"
- :class="prefixCls"
- :width="getMenuWidth"
- :getContainer="null"
- :visible="!getCollapsed"
- @close="handleClose"
- >
- <Sider />
- </Drawer>
- <MixSider v-else-if="getIsMixSidebar" />
- <BottomSider v-else-if="getIsBottomMenu" />
- <Sider v-else /> -->
- <BottomSider v-if="!noSiderLink.includes(routePath)" />
- <bottomSider2 v-if="noChatLink.includes(routePath)" />
- </template>
- <script lang="ts">
- import { defineComponent } from 'vue';
- import Sider from './LayoutSider.vue';
- import MixSider from './MixSider.vue';
- import BottomSider from './bottomSideder.vue';
- import bottomSider2 from './bottomSider2.vue';
- import { Drawer } from 'ant-design-vue';
- import { useAppInject } from '/@/hooks/web/useAppInject';
- import { useMenuSetting } from '/@/hooks/setting/useMenuSetting';
- import { useDesign } from '/@/hooks/web/useDesign';
- import { useRoute } from 'vue-router';
- import { noSiderLink, noChatLink } from '../layout.data';
- export default defineComponent({
- name: 'SiderWrapper',
- components: { Sider, Drawer, MixSider, BottomSider, bottomSider2 },
- setup() {
- const route = useRoute();
- const { prefixCls } = useDesign('layout-sider-wrapper');
- const { getIsMobile } = useAppInject();
- const { setMenuSetting, getCollapsed, getMenuWidth, getIsMixSidebar, getIsBottomMenu, getIsBottomMenuH, getShowSidebar } = useMenuSetting();
- function handleClose() {
- setMenuSetting({
- collapsed: true,
- });
- }
- return {
- prefixCls,
- getIsMobile,
- getCollapsed,
- handleClose,
- getMenuWidth,
- getIsMixSidebar,
- getIsBottomMenu,
- getIsBottomMenuH,
- getShowSidebar,
- routePath: route.path,
- noSiderLink,
- noChatLink,
- };
- },
- });
- </script>
- <style lang="less">
- @prefix-cls: ~'@{namespace}-layout-sider-wrapper';
- @ventSpace: zxm;
- .@{prefix-cls} {
- .@{ventSpace}-drawer-body {
- height: 100vh;
- padding: 0;
- }
- .@{ventSpace}-drawer-header-no-title {
- display: none;
- }
- }
- </style>
|