|
@@ -12,16 +12,19 @@
|
|
|
</template>
|
|
|
<el-menu-item v-for="(sub, subIndex) in jobs.children" :key="subIndex" :index="sub.path">{{ sub.title }}</el-menu-item>
|
|
|
</el-submenu>
|
|
|
- <!-- <el-menu-item v-else :index="item.path" :key="index">{{ item.title }}</el-menu-item> -->
|
|
|
</template>
|
|
|
<template v-for="(item, index) in menu">
|
|
|
- <el-submenu :index="`${index}`" :key="index">
|
|
|
+ <el-submenu :index="`${index}`" :key="index" v-if="item.type !== 'url' && item.type !== 'content'">
|
|
|
<template slot="title">
|
|
|
{{ item.title }}
|
|
|
</template>
|
|
|
- <el-menu-item v-for="(sub, subIndex) in item.children" :key="subIndex" :index="sub.path">{{ sub.title }}</el-menu-item>
|
|
|
+ <template v-for="(sub, subIndex) in item.children">
|
|
|
+ <el-menu-item :index="sub.path" :key="subIndex" v-if="sub.type !== 'url'">{{ sub.title }}</el-menu-item>
|
|
|
+ <el-menu-item :index="``" :key="subIndex" @click="turnTo(sub.url)" v-else> {{ sub.title }}</el-menu-item>
|
|
|
+ </template>
|
|
|
</el-submenu>
|
|
|
- <!-- <el-menu-item v-else :index="item.path" :key="index">{{ item.title }}</el-menu-item> -->
|
|
|
+ <el-menu-item v-else-if="item.type === 'content'" :index="item.path" :key="index">{{ item.title }}</el-menu-item>
|
|
|
+ <el-menu-item v-else :index="``" :key="index" @click="turnTo(item.url)">{{ item.title }}</el-menu-item>
|
|
|
</template>
|
|
|
</el-menu>
|
|
|
</el-col>
|
|
@@ -62,8 +65,12 @@ export default {
|
|
|
//获取菜单的栏目
|
|
|
let allMenu = result.data;
|
|
|
for (let item of allMenu) {
|
|
|
- let res = await this.completeMenu(item);
|
|
|
- item.children = res;
|
|
|
+ if (item.type === 'content') {
|
|
|
+ item.path = `/info/detail?id=${item.content_id}`;
|
|
|
+ } else if (item.type !== 'url') {
|
|
|
+ let res = await this.completeMenu(item);
|
|
|
+ item.children = res;
|
|
|
+ }
|
|
|
}
|
|
|
sessionStorage.setItem('menu', JSON.stringify(allMenu));
|
|
|
this.$set(this, `menu`, allMenu);
|
|
@@ -74,11 +81,15 @@ export default {
|
|
|
if (`${res.errcode}` === '0') {
|
|
|
//组合path:res.data内容都为栏目.所以,点击这些栏目显示的列表应该是信息列表,需要用栏目的id作为查询信息的parten_id查出不同栏目的信息
|
|
|
for (const col of res.data) {
|
|
|
- col.path = `/info/list/${col.id}`;
|
|
|
+ if (col.type === 'content') col.path = `/info/detail?id=${col.content_id}`;
|
|
|
+ else if (item.type !== 'url') col.path = `/info/list/${col.id}`;
|
|
|
}
|
|
|
return res.data;
|
|
|
}
|
|
|
},
|
|
|
+ turnTo(url) {
|
|
|
+ window.open(url);
|
|
|
+ },
|
|
|
},
|
|
|
};
|
|
|
</script>
|