mirror of
https://gitee.com/log4j/pig-ui.git
synced 2024-12-23 13:43:51 +08:00
'admin-21.05.31:修复分栏、经典布局路由设置meta.isHide为true时报错问题,感谢群友@29、@芭芭拉'
This commit is contained in:
parent
80a88495fb
commit
2c1ffb7369
@ -8,4 +8,5 @@
|
|||||||
|
|
||||||
- 🎉 新增 更新日志文件 `CHANGELOG.md`,以后每次更新都会在这里显示对应内容
|
- 🎉 新增 更新日志文件 `CHANGELOG.md`,以后每次更新都会在这里显示对应内容
|
||||||
- 🌟 更新 依赖更新最新版本
|
- 🌟 更新 依赖更新最新版本
|
||||||
- 🐞 修复 分栏布局路由设置 `meta.isHide` 为 `true` 时报错问题,感谢群友@29
|
- 🐞 修复 分栏、经典布局路由设置 `meta.isHide` 为 `true` 时报错问题,感谢群友@29、@芭芭拉
|
||||||
|
- 🐞 修复 经典布局点击 `tagsView` 左侧菜单数据不变问题
|
||||||
|
@ -85,9 +85,8 @@ export default {
|
|||||||
proxy.$refs.layoutAsideScrollbarRef.update();
|
proxy.$refs.layoutAsideScrollbarRef.update();
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
// 监听路由的变化,动态赋值给菜单中
|
// 监听vuex值的变化,动态赋值给菜单中
|
||||||
watch(store.state, (val) => {
|
watch(store.state, (val) => {
|
||||||
if (val.routesList.routesList.length === state.menuList.length) return false;
|
|
||||||
let { layout, isClassicSplitMenu } = val.themeConfig.themeConfig;
|
let { layout, isClassicSplitMenu } = val.themeConfig.themeConfig;
|
||||||
if (layout === 'classic' && isClassicSplitMenu) return false;
|
if (layout === 'classic' && isClassicSplitMenu) return false;
|
||||||
setFilterRoutes();
|
setFilterRoutes();
|
||||||
|
@ -132,11 +132,9 @@ export default {
|
|||||||
onColumnsAsideDown(currentSplitRoute.k);
|
onColumnsAsideDown(currentSplitRoute.k);
|
||||||
}, 0);
|
}, 0);
|
||||||
};
|
};
|
||||||
// 监听路由的变化,动态赋值给菜单中
|
// 监听布局配置信息的变化,动态增加菜单高亮位置移动像素
|
||||||
watch(store.state, (val) => {
|
watch(store.state, (val) => {
|
||||||
val.themeConfig.themeConfig.columnsAsideStyle === 'columnsRound' ? (state.difference = 3) : (state.difference = 0);
|
val.themeConfig.themeConfig.columnsAsideStyle === 'columnsRound' ? (state.difference = 3) : (state.difference = 0);
|
||||||
if (val.routesList.routesList.length === state.columnsAsideList.length) return false;
|
|
||||||
setFilterRoutes();
|
|
||||||
});
|
});
|
||||||
// 页面加载时
|
// 页面加载时
|
||||||
onMounted(() => {
|
onMounted(() => {
|
||||||
|
@ -8,7 +8,7 @@
|
|||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import { computed, reactive, toRefs, onMounted, onUnmounted, getCurrentInstance, watch } from 'vue';
|
import { computed, reactive, toRefs, onMounted, onUnmounted, getCurrentInstance } from 'vue';
|
||||||
import { useRoute } from 'vue-router';
|
import { useRoute } from 'vue-router';
|
||||||
import { useStore } from '/@/store/index.ts';
|
import { useStore } from '/@/store/index.ts';
|
||||||
import Breadcrumb from '/@/views/layout/navBars/breadcrumb/breadcrumb.vue';
|
import Breadcrumb from '/@/views/layout/navBars/breadcrumb/breadcrumb.vue';
|
||||||
@ -81,11 +81,6 @@ export default {
|
|||||||
});
|
});
|
||||||
return currentData;
|
return currentData;
|
||||||
};
|
};
|
||||||
// 监听路由的变化,动态赋值给菜单中
|
|
||||||
watch(store.state, (val) => {
|
|
||||||
if (val.routesList.routesList.length === state.menuList.length) return false;
|
|
||||||
setFilterRoutes();
|
|
||||||
});
|
|
||||||
// 页面加载时
|
// 页面加载时
|
||||||
onMounted(() => {
|
onMounted(() => {
|
||||||
setFilterRoutes();
|
setFilterRoutes();
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="el-menu-horizontal-warp">
|
<div class="el-menu-horizontal-warp">
|
||||||
<el-scrollbar @wheel.native.prevent="onElMenuHorizontalScroll" ref="elMenuHorizontalScrollRef">
|
<el-scrollbar @wheel.native.prevent="onElMenuHorizontalScroll" ref="elMenuHorizontalScrollRef">
|
||||||
<el-menu router :default-active="defaultActive" background-color="transparent" mode="horizontal" @select="onHorizontalSelect">
|
<el-menu router :default-active="defaultActive" background-color="transparent" mode="horizontal">
|
||||||
<template v-for="val in menuLists">
|
<template v-for="val in menuLists">
|
||||||
<el-submenu :index="val.path" v-if="val.children && val.children.length > 0" :key="val.path">
|
<el-submenu :index="val.path" v-if="val.children && val.children.length > 0" :key="val.path">
|
||||||
<template #title>
|
<template #title>
|
||||||
@ -99,10 +99,6 @@ export default defineComponent({
|
|||||||
});
|
});
|
||||||
return currentData;
|
return currentData;
|
||||||
};
|
};
|
||||||
// 菜单激活回调
|
|
||||||
const onHorizontalSelect = (path: string) => {
|
|
||||||
proxy.mittBus.emit('setSendClassicChildren', setSendClassicChildren(path));
|
|
||||||
};
|
|
||||||
// 页面加载时
|
// 页面加载时
|
||||||
onMounted(() => {
|
onMounted(() => {
|
||||||
initElMenuOffsetLeft();
|
initElMenuOffsetLeft();
|
||||||
@ -112,11 +108,15 @@ export default defineComponent({
|
|||||||
onBeforeRouteUpdate((to) => {
|
onBeforeRouteUpdate((to) => {
|
||||||
setCurrentRouterHighlight(to.path);
|
setCurrentRouterHighlight(to.path);
|
||||||
proxy.mittBus.emit('onMenuClick');
|
proxy.mittBus.emit('onMenuClick');
|
||||||
|
// 修复经典布局开启切割菜单时,点击tagsView后左侧导航菜单数据不变的问题
|
||||||
|
let { layout, isClassicSplitMenu } = store.state.themeConfig.themeConfig;
|
||||||
|
if (layout === 'classic' && isClassicSplitMenu) {
|
||||||
|
proxy.mittBus.emit('setSendClassicChildren', setSendClassicChildren(to.path));
|
||||||
|
}
|
||||||
});
|
});
|
||||||
return {
|
return {
|
||||||
menuLists,
|
menuLists,
|
||||||
onElMenuHorizontalScroll,
|
onElMenuHorizontalScroll,
|
||||||
onHorizontalSelect,
|
|
||||||
...toRefs(state),
|
...toRefs(state),
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
|
Loading…
Reference in New Issue
Block a user