{"remainingRequest":"D:\\jenkins\\workspace\\cssc-fvue\\node_modules\\vue-loader\\lib\\index.js??vue-loader-options!D:\\jenkins\\workspace\\cssc-fvue\\src\\components\\layout\\SideMenu.vue?vue&type=script&lang=js&","dependencies":[{"path":"D:\\jenkins\\workspace\\cssc-fvue\\src\\components\\layout\\SideMenu.vue","mtime":1667804639368},{"path":"D:\\jenkins\\workspace\\cssc-fvue\\node_modules\\babel-loader\\lib\\index.js","mtime":315532800000},{"path":"D:\\jenkins\\workspace\\cssc-fvue\\node_modules\\cache-loader\\dist\\cjs.js","mtime":499162500000},{"path":"D:\\jenkins\\workspace\\cssc-fvue\\node_modules\\vue-loader\\lib\\index.js","mtime":499162500000}],"contextDependencies":[],"result":["//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\r\nimport {mapState} from 'vuex'\r\nimport menu from '@/api/menu.js'\r\nexport default {\r\n props: {\r\n menuShow: {\r\n type: Boolean,\r\n default: true,\r\n },\r\n },\r\n data() {\r\n return {\r\n currentSubMenu: [],\r\n activeIndex: '',\r\n }\r\n },\r\n watch: {\r\n // 监听路由,如果为首页等非菜单页面,取消菜单选中项\r\n $route(to, from) {\r\n if (to.meta.isHome) {\r\n this.activeIndex = ''\r\n }\r\n },\r\n },\r\n computed: {\r\n ...mapState({\r\n frontMenus: (state) => {\r\n // console.log(state.menu.frontMenus, 'dfsdsddf')\r\n return state.menu.frontMenus\r\n },\r\n }),\r\n },\r\n mounted() {\r\n this.activeIndex = this.$route.path\r\n // const this_ = this\r\n // setTimeout(function () {\r\n // !this_.currentUser &&\r\n // this_.$store.dispatch('user/loadCurrentUserDetail')\r\n // }, 2000)\r\n const currentUser = this.$store.state.login.currentUser\r\n if ((!this.frontMenus || this.frontMenus.length == 0) && currentUser) {\r\n let this_ = this\r\n this.$store.dispatch('menu/actionFrontMenus').then((data) => {\r\n // this.filterSubMenu()\r\n })\r\n }\r\n // else {\r\n // this.filterSubMenu()\r\n // }\r\n this.$bus.$on('frontMenuShow', () => {\r\n this.handleMenuCollapse()\r\n })\r\n },\r\n\r\n methods: {\r\n // 菜单的收折\r\n handleMenuCollapse() {\r\n this.$emit('update:menuShow', !this.menuShow)\r\n },\r\n // 选中菜单跳转 不启用el-menu router模式 否则无法选中 暂未查明原因,改用手动推路由\r\n handleSelect(path, isJump) {\r\n let alias\r\n let _this = this\r\n if (path && path.indexOf('/frontPlat/href') == -1) {\r\n // url 菜单\r\n let i = path.lastIndexOf('/')\r\n alias = path.slice(i + 1)\r\n } else {\r\n alias = path.replace('/frontPlat/', '')\r\n }\r\n menu.getMenuByAlias(alias, (m) => {\r\n m && _this.$emit('menuChange', m)\r\n if (m && m.openType == '2' && isJump) {\r\n if (m.alias.indexOf('href/') == -1) {\r\n let openPath = '/newOpen/' + m.alias;\r\n let routeUrl = this.$router.resolve({path: openPath})\r\n window.open(routeUrl.href, '_blank')\r\n } else {\r\n let tempwindow = window.open()\r\n tempwindow.location = m.href\r\n }\r\n } else if (m && m.parent) {\r\n this.$router.push(path)\r\n this.activeIndex = path\r\n }\r\n })\r\n },\r\n\r\n // // 筛选出选中菜单\r\n // filterSubMenu() {\r\n // this.alias = this.$route.path.split('/')[2].replace('/', '')\r\n // console.log(this.alias)\r\n // if (this.frontMenus) {\r\n // this.currentMenu = this.frontMenus\r\n // console.log(this.currentSubMenu, 'this.currentSubMenu')\r\n // this.$refs.sidemenu.activeIndex = '/frontPlat/' + this.alias\r\n // }\r\n // },\r\n },\r\n}\r\n",null]}