|
@@ -7,11 +7,11 @@
|
|
|
<template v-for="(item, index) in menu">
|
|
|
<el-submenu v-if="item.children.length > 0" :index="`${index}`" :key="index">
|
|
|
<template slot="title">
|
|
|
- {{ item.name }}
|
|
|
+ {{ item.title }}
|
|
|
</template>
|
|
|
- <el-menu-item v-for="(sub, subIndex) in item.children" :key="subIndex" :index="sub.path">{{ sub.name }}</el-menu-item>
|
|
|
+ <el-menu-item v-for="(sub, subIndex) in item.children" :key="subIndex" :index="sub.path">{{ sub.title }}</el-menu-item>
|
|
|
</el-submenu>
|
|
|
- <el-menu-item v-else :index="item.path" :key="index">{{ item.name }}</el-menu-item>
|
|
|
+ <el-menu-item v-else :index="item.path" :key="index">{{ item.title }}</el-menu-item>
|
|
|
</template>
|
|
|
</el-menu>
|
|
|
</el-col>
|
|
@@ -35,7 +35,7 @@ export default {
|
|
|
this.loadMenu();
|
|
|
},
|
|
|
methods: {
|
|
|
- ...mapActions(['menuOperation']),
|
|
|
+ ...mapActions(['menuOperation', 'newsOperation', 'columnOperation']),
|
|
|
async loadMenu() {
|
|
|
let menu = sessionStorage.getItem('menu');
|
|
|
if (menu) {
|
|
@@ -44,40 +44,22 @@ export default {
|
|
|
} else this.getMenu();
|
|
|
},
|
|
|
async getMenu() {
|
|
|
+ //获取菜单
|
|
|
let result = await this.menuOperation({ type: 'list', data: { site: this.$site } });
|
|
|
if (`${result.errcode}` === '0') {
|
|
|
+ //获取菜单的栏目
|
|
|
let allMenu = result.data;
|
|
|
- let fMenu = [];
|
|
|
- let otherMenu = [];
|
|
|
- allMenu.map(item => {
|
|
|
- if (item.parent_id) {
|
|
|
- otherMenu.push(item);
|
|
|
- } else {
|
|
|
- item.children = [];
|
|
|
- fMenu.push(item);
|
|
|
- }
|
|
|
- });
|
|
|
- //先整合非一级菜单的数据
|
|
|
- let newArr = otherMenu.map(item => {
|
|
|
- let index = _.findIndex(otherMenu, menuItem => menuItem.id === item.parent_id);
|
|
|
- if (index > -1) {
|
|
|
- //若此数据为otherMenu中某项的子项,则将此项推进该项的children中,且不需要返回
|
|
|
- if (!otherMenu[index].children) otherMenu[index].children = [];
|
|
|
- otherMenu[index].children.push(item);
|
|
|
- } else {
|
|
|
- //若不是otherMenu中某项的子项,则返回
|
|
|
- return item;
|
|
|
- }
|
|
|
- });
|
|
|
- newArr = newArr.filter(fil => fil !== undefined);
|
|
|
- newArr.map(item => {
|
|
|
- let index = _.findIndex(fMenu, menuItem => menuItem.id === item.parent_id);
|
|
|
- if (index > -1) fMenu[index].children.push(item);
|
|
|
- });
|
|
|
- this.$set(this, `menu`, fMenu);
|
|
|
- sessionStorage.setItem('menu', JSON.stringify(fMenu));
|
|
|
+ for (let item of allMenu) {
|
|
|
+ let res = await this.completeMenu(item);
|
|
|
+ console.log(res);
|
|
|
+ }
|
|
|
}
|
|
|
- this.$set(this, 'site', result.data);
|
|
|
+ },
|
|
|
+ async completeMenu(item) {
|
|
|
+ //如果type
|
|
|
+ let res = await this.columnOperation({ type: 'search', data: { parent_id: item.id } });
|
|
|
+ console.log(res);
|
|
|
+ return res;
|
|
|
},
|
|
|
},
|
|
|
};
|