From 8552850e2c8e5845ccac0bb3d5e4f6689969ce29 Mon Sep 17 00:00:00 2001
From: RuoYi <yzz_ivy@163.com>
Date: 星期日, 23 四月 2023 16:43:15 +0800
Subject: [PATCH] DictTag组件,当value没有匹配的值时,展示value
---
src/layout/index.vue | 55 ++++++++++++++++++++++++++++++++++++-------------------
1 files changed, 36 insertions(+), 19 deletions(-)
diff --git a/src/layout/index.vue b/src/layout/index.vue
index 419c80a..b81b4b3 100644
--- a/src/layout/index.vue
+++ b/src/layout/index.vue
@@ -3,13 +3,15 @@
<div v-if="device === 'mobile' && sidebar.opened" class="drawer-bg" @click="handleClickOutside"/>
<sidebar v-if="!sidebar.hide" class="sidebar-container" />
<div :class="{ hasTagsView: needTagsView, sidebarHide: sidebar.hide }" class="main-container">
- <div :class="{ 'fixed-header': fixedHeader }">
- <navbar @setLayout="setLayout" />
- <tags-view v-if="needTagsView" />
- </div>
- <app-main />
- <settings ref="settingRef" />
- </div>
+ <el-scrollbar>
+ <div :class="{ 'fixed-header': fixedHeader }">
+ <navbar @setLayout="setLayout" />
+ <tags-view v-if="needTagsView" />
+ </div>
+ <app-main />
+ <settings ref="settingRef" />
+ </el-scrollbar>
+ </div>
</div>
</template>
@@ -19,13 +21,16 @@
import { AppMain, Navbar, Settings, TagsView } from './components'
import defaultSettings from '@/settings'
-const store = useStore();
-const theme = computed(() => store.state.settings.theme);
-const sideTheme = computed(() => store.state.settings.sideTheme);
-const sidebar = computed(() => store.state.app.sidebar);
-const device = computed(() => store.state.app.device);
-const needTagsView = computed(() => store.state.settings.tagsView);
-const fixedHeader = computed(() => store.state.settings.fixedHeader);
+import useAppStore from '@/store/modules/app'
+import useSettingsStore from '@/store/modules/settings'
+
+const settingsStore = useSettingsStore()
+const theme = computed(() => settingsStore.theme);
+const sideTheme = computed(() => settingsStore.sideTheme);
+const sidebar = computed(() => useAppStore().sidebar);
+const device = computed(() => useAppStore().device);
+const needTagsView = computed(() => settingsStore.tagsView);
+const fixedHeader = computed(() => settingsStore.fixedHeader);
const classObj = computed(() => ({
hideSidebar: !sidebar.value.opened,
@@ -39,18 +44,18 @@
watchEffect(() => {
if (device.value === 'mobile' && sidebar.value.opened) {
- store.dispatch('app/closeSideBar', { withoutAnimation: false })
+ useAppStore().closeSideBar({ withoutAnimation: false })
}
if (width.value - 1 < WIDTH) {
- store.dispatch('app/toggleDevice', 'mobile')
- store.dispatch('app/closeSideBar', { withoutAnimation: true })
+ useAppStore().toggleDevice('mobile')
+ useAppStore().closeSideBar({ withoutAnimation: true })
} else {
- store.dispatch('app/toggleDevice', 'desktop')
+ useAppStore().toggleDevice('desktop')
}
})
function handleClickOutside() {
- store.dispatch('app/closeSideBar', { withoutAnimation: false })
+ useAppStore().closeSideBar({ withoutAnimation: false })
}
const settingRef = ref(null);
@@ -69,6 +74,18 @@
height: 100%;
width: 100%;
+ .el-scrollbar {
+ height: 100%;
+ }
+
+ :deep(.el-scrollbar__bar).is-vertical {
+ z-index: 10;
+ }
+
+ :deep(.el-scrollbar__wrap) {
+ overflow-x: hidden;
+ }
+
&.mobile.openSidebar {
position: fixed;
top: 0;
--
Gitblit v1.9.3