perf: 同步完整版分支代码

This commit is contained in:
xiaoxian521
2021-11-28 16:39:26 +08:00
parent 1e92bd416e
commit e9dc8274a0
20 changed files with 326 additions and 165 deletions

View File

@@ -17,6 +17,7 @@ import fullScreen from "/@/assets/svg/full_screen.svg";
import exitScreen from "/@/assets/svg/exit_screen.svg";
import { deviceDetection } from "/@/utils/deviceDetection";
import { useSettingStoreHook } from "/@/store/modules/settings";
import { useMultiTagsStore } from "/@/store/modules/multiTags";
import navbar from "./components/navbar.vue";
import tag from "./components/tag/index.vue";
@@ -33,11 +34,11 @@ const instance = getCurrentInstance().appContext.app.config.globalProperties;
const layout = computed(() => {
// 路由
if (
!instance.$storage.routesInStorage ||
instance.$storage.routesInStorage.length === 0
useMultiTagsStore().multiTagsCache &&
(!instance.$storage.tags || instance.$storage.tags.length === 0)
) {
// eslint-disable-next-line vue/no-side-effects-in-computed-properties
instance.$storage.routesInStorage = routerArrays;
instance.$storage.tags = routerArrays;
}
// 国际化
if (!instance.$storage.locale) {
@@ -105,6 +106,9 @@ function toggle(device: string, bool: boolean) {
useAppStoreHook().toggleSideBar(bool, "resize");
}
// 判断是否可自动关闭菜单栏
let isAutoCloseSidebar = true;
// 监听容器
emitter.on("resize", ({ detail }) => {
if (isMobile) return;
@@ -117,11 +121,16 @@ emitter.on("resize", ({ detail }) => {
*/
if (width > 0 && width <= 760) {
toggle("mobile", false);
isAutoCloseSidebar = true;
} else if (width > 760 && width <= 990) {
toggle("desktop", false);
if (isAutoCloseSidebar) {
toggle("desktop", false);
isAutoCloseSidebar = false;
}
} else if (width > 990) {
if (!set.sidebar.isClickHamburger) {
toggle("desktop", true);
isAutoCloseSidebar = true;
}
}
});