Skip to content

Commit f99bfe2

Browse files
author
QM303176530
committed
增加菜单参数配置功能
移除视图中复杂sql更改为model映射模式
1 parent 834a233 commit f99bfe2

File tree

3 files changed

+195
-115
lines changed

3 files changed

+195
-115
lines changed

web/src/view/layout/aside/asideComponent/menuItem.vue

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
<template>
2-
<el-menu-item :index="routerInfo.name">
2+
<el-menu-item :index="routerInfo.name" :route="{parameters:routerInfo.parameters}">
33
<i :class="'el-icon-'+routerInfo.meta.icon"></i>
44
<span slot="title">{{routerInfo.meta.title}}</span>
55
</el-menu-item>

web/src/view/layout/aside/index.vue

Lines changed: 30 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -22,49 +22,60 @@
2222
</template>
2323

2424
<script>
25-
import { mapGetters, mapMutations } from 'vuex'
26-
import AsideComponent from '@/view/layout/aside/asideComponent'
25+
import { mapGetters, mapMutations } from "vuex";
26+
import AsideComponent from "@/view/layout/aside/asideComponent";
2727
export default {
28-
name: 'Aside',
28+
name: "Aside",
2929
data() {
3030
return {
31-
active: '',
31+
active: "",
3232
isCollapse: false
33-
}
33+
};
3434
},
3535
methods: {
36-
...mapMutations('history', ['addHistory']),
37-
selectMenuItem(index) {
38-
if (index === this.$route.name) return
39-
this.$router.push({ name: index })
36+
...mapMutations("history", ["addHistory"]),
37+
selectMenuItem(index, _, ele) {
38+
const query = {};
39+
const params = {};
40+
ele.route.parameters &&
41+
ele.route.parameters.map(item => {
42+
if (item.type == "query") {
43+
query[item.key] = item.value;
44+
} else {
45+
params[item.key] = item.value;
46+
}
47+
});
48+
console.log(query, params);
49+
if (index === this.$route.name) return;
50+
this.$router.push({ name: index, query, params });
4051
}
4152
},
4253
computed: {
43-
...mapGetters('router', ['asyncRouters'])
54+
...mapGetters("router", ["asyncRouters"])
4455
},
4556
components: {
4657
AsideComponent
4758
},
4859
created() {
49-
this.active = this.$route.name
50-
let screenWidth = document.body.clientWidth
60+
this.active = this.$route.name;
61+
let screenWidth = document.body.clientWidth;
5162
if (screenWidth < 1000) {
52-
this.isCollapse = !this.isCollapse
63+
this.isCollapse = !this.isCollapse;
5364
}
5465
55-
this.$bus.on('collapse', item => {
56-
this.isCollapse = item
57-
})
66+
this.$bus.on("collapse", item => {
67+
this.isCollapse = item;
68+
});
5869
},
5970
watch: {
6071
$route() {
61-
this.active = this.$route.name
72+
this.active = this.$route.name;
6273
}
6374
},
6475
beforeDestroy() {
65-
this.$bus.off('collapse')
76+
this.$bus.off("collapse");
6677
}
67-
}
78+
};
6879
</script>
6980

7081
<style lang="scss">

0 commit comments

Comments
 (0)