| | |
| | | <template> |
| | | <div class="top-menu"> |
| | | <el-menu :default-active="activeIndex" |
| | | mode="horizontal" |
| | | text-color="#333"> |
| | | <el-menu-item index="0" @click.native="openHome(itemHome)" key="0"> |
| | | <el-menu :default-active="activeIndex" mode="horizontal" text-color="#333"> |
| | | <el-menu-item index="0" @click.native="openHome(dataItem)" key="0"> |
| | | <template slot="title"> |
| | | <i :class="itemHome.source"></i> |
| | | <span>{{generateTitle(itemHome)}}</span> |
| | | <i :class="dataItem.source" :title="dataItem.name"></i> |
| | | </template> |
| | | </el-menu-item> |
| | | <!-- <el-menu-item index="0" @click.native="openHomes(ZHAJ)" key="0">--> |
| | | <!-- <template slot="title">--> |
| | | <!-- <i :class="ZHAJ.source"></i>--> |
| | | <!-- <span>{{generateTitle(ZHAJ)}}</span>--> |
| | | <!-- </template>--> |
| | | <!-- </el-menu-item>--> |
| | | <template v-for="(item,index) in items"> |
| | | <el-menu-item :index="item.id+''" @click.native="openMenu(item)" :key="index"> |
| | | <el-menu-item index="1" @click.native="openHome(mapItem)" key="0"> |
| | | <template slot="title"> |
| | | <i :class="mapItem.source" :title="mapItem.name"></i> |
| | | </template> |
| | | </el-menu-item> |
| | | <el-menu-item index="2" @click.native="openHome(cardItem)" key="0"> |
| | | <template slot="title"> |
| | | <i :class="cardItem.source" :title="cardItem.name"></i> |
| | | </template> |
| | | </el-menu-item> |
| | | <!-- <el-menu-item index="0" @click.native="openHomes(ZHAJ)" key="0">--> |
| | | <!-- <template slot="title">--> |
| | | <!-- <i :class="ZHAJ.source"></i>--> |
| | | <!-- <span>{{generateTitle(ZHAJ)}}</span>--> |
| | | <!-- </template>--> |
| | | <!-- </el-menu-item>--> |
| | | <template v-for="(item, index) in items"> |
| | | <el-menu-item |
| | | :index="item.id + ''" |
| | | @click.native="openMenu(item)" |
| | | :key="index" |
| | | > |
| | | <template slot="title"> |
| | | <i :class="item.source" style="padding-right: 5px;"></i> |
| | | <span>{{generateTitle(item)}}</span> |
| | | <i :class="item.source" style="padding-right: 5px"></i> |
| | | <span>{{ generateTitle(item) }}</span> |
| | | </template> |
| | | </el-menu-item> |
| | | </template> |
| | |
| | | </template> |
| | | |
| | | <script> |
| | | import {mapGetters} from "vuex"; |
| | | import { mapGetters } from "vuex"; |
| | | |
| | | export default { |
| | | name: "top-menu", |
| | | data() { |
| | | return { |
| | | itemHome: { |
| | | name: '数据模式', |
| | | source: 'el-icon-menu', |
| | | }, |
| | | ZHAJ: { |
| | | name: '智慧安检', |
| | | source: 'icon-anbao', |
| | | }, |
| | | activeIndex: "0", |
| | | items: [], |
| | | }; |
| | | export default { |
| | | name: "top-menu", |
| | | data() { |
| | | return { |
| | | dataItem: { |
| | | name: "数据模式", |
| | | source: "el-icon-s-data", |
| | | path: "/wel/index", |
| | | }, |
| | | mapItem: { |
| | | name: "地图模式", |
| | | source: "el-icon-location", |
| | | path: "/welcomeData/map", |
| | | }, |
| | | cardItem: { |
| | | name: "卡片模式", |
| | | source: "el-icon-menu", |
| | | path: "/welcomeData/card", |
| | | }, |
| | | ZHAJ: { |
| | | name: "智慧安检", |
| | | source: "icon-anbao", |
| | | }, |
| | | activeIndex: "0", |
| | | items: [], |
| | | }; |
| | | }, |
| | | inject: ["index"], |
| | | created() { |
| | | this.getMenu(); |
| | | }, |
| | | computed: { |
| | | ...mapGetters(["tagCurrent", "menu"]), |
| | | }, |
| | | methods: { |
| | | openHome(itemHome) { |
| | | this.index.openMenu(itemHome); |
| | | this.$router.push({ |
| | | path: itemHome.path, |
| | | }); |
| | | }, |
| | | inject: ["index"], |
| | | created() { |
| | | this.getMenu(); |
| | | openHomes(itemHome) { |
| | | this.index.openMenu(itemHome); |
| | | this.$router.push({ |
| | | path: this.$router.$avueRouter.getPath( |
| | | { |
| | | name: itemHome.name, |
| | | src: |
| | | "https://cas.sf-express.com/cas/login?service=http://fengkong.sf-express.com/backstageprd/#/homeInfo/infoOverview", |
| | | }, |
| | | {} |
| | | ), |
| | | }); |
| | | }, |
| | | computed: { |
| | | ...mapGetters(["tagCurrent", "menu"]) |
| | | openMenu(item) { |
| | | this.index.openMenu(item); |
| | | }, |
| | | methods: { |
| | | openHome(itemHome) { |
| | | this.index.openMenu(itemHome); |
| | | this.$router.push({ |
| | | path: this.$router.$avueRouter.getPath({name: itemHome.name, src: ''}, {}) |
| | | }); |
| | | }, |
| | | openHomes(itemHome) { |
| | | this.index.openMenu(itemHome); |
| | | this.$router.push({ |
| | | path: this.$router.$avueRouter.getPath({name: itemHome.name, src: 'https://cas.sf-express.com/cas/login?service=http://fengkong.sf-express.com/backstageprd/#/homeInfo/infoOverview'}, {}) |
| | | }); |
| | | }, |
| | | openMenu(item) { |
| | | this.index.openMenu(item) |
| | | }, |
| | | getMenu() { |
| | | this.$store.dispatch("GetTopMenu").then(res => { |
| | | this.items = res; |
| | | }); |
| | | }, |
| | | generateTitle(item) { |
| | | return this.$router.$avueRouter.generateTitle( |
| | | item.name, |
| | | (item.meta || {}).i18n |
| | | ); |
| | | }, |
| | | } |
| | | }; |
| | | getMenu() { |
| | | this.$store.dispatch("GetTopMenu").then((res) => { |
| | | this.items = res; |
| | | }); |
| | | }, |
| | | generateTitle(item) { |
| | | return this.$router.$avueRouter.generateTitle( |
| | | item.name, |
| | | (item.meta || {}).i18n |
| | | ); |
| | | }, |
| | | }, |
| | | }; |
| | | </script> |