{"remainingRequest":"D:\\jenkins\\workspace\\xq-web-fvue\\node_modules\\vue-loader\\lib\\index.js??vue-loader-options!D:\\jenkins\\workspace\\xq-web-fvue\\src\\components\\layout\\SideMenu.vue?vue&type=script&lang=js&","dependencies":[{"path":"D:\\jenkins\\workspace\\xq-web-fvue\\src\\components\\layout\\SideMenu.vue","mtime":1667327529575},{"path":"D:\\jenkins\\workspace\\xq-web-fvue\\node_modules\\babel-loader\\lib\\index.js","mtime":315532800000},{"path":"D:\\jenkins\\workspace\\xq-web-fvue\\node_modules\\cache-loader\\dist\\cjs.js","mtime":499162500000},{"path":"D:\\jenkins\\workspace\\xq-web-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//\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 imgUrl: require('@/assets/img/left.png'),\r\n imgbool: '',\r\n activeHover: false,\r\n bol: true,\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 },\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\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 this.$bus.$on('roterPush', (path) => {\r\n console.log('监听到了')\r\n this.activeIndex = path\r\n })\r\n this.$bus.$on('handleAsideBtn', (bol) => {\r\n this.bol = bol\r\n })\r\n window.addEventListener(\r\n 'mousemove',\r\n (e) => {\r\n this.$nextTick(() => {\r\n this.handleMousemove(e)\r\n })\r\n },\r\n true\r\n )\r\n },\r\n\r\n methods: {\r\n handleMousemove(e) {\r\n let pageX = e.pageX\r\n let pageY = e.pageY\r\n // let dom = this.$refs.menuIcon\r\n if (this.bol) {\r\n if (this.menuShow) {\r\n if (pageX <= 220 && pageY > 60) {\r\n this.activeHover = true\r\n } else {\r\n this.activeHover = false\r\n }\r\n } else {\r\n if (pageX <= 30 && pageY > 60) {\r\n this.activeHover = true\r\n } else {\r\n this.activeHover = false\r\n }\r\n }\r\n }\r\n },\r\n // 菜单的收折\r\n handleMenuCollapse() {\r\n this.$emit('update:menuShow', !this.menuShow)\r\n // console.log(this.menuShow)\r\n // if (this.menuShow) {\r\n // this.$refs.img.style.left = 0\r\n // this.imgUrl = require('@/assets/img/right.png')\r\n // } else {\r\n // this.$refs.img.style.left = '210px'\r\n // this.imgUrl = require('@/assets/img/left.png')\r\n // }\r\n },\r\n // 选中菜单跳转 不启用el-menu router模式 否则无法选中 暂未查明原因,改用手动推路由\r\n handleSelect(path, isJump) {\r\n // console.log(path, \"alias\")\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 // console.log(alias, \"alias\")\r\n menu.getMenuByAlias(alias, (m) => {\r\n // debugger\r\n console.log(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 // let token = JSON.parse(window.sessionStorage.getItem('currentUser')).token\r\n window.open(routeUrl.href, '_blank')\r\n // window.open(\r\n // window.context.yhxt + `${routeUrl.href}` + '?token=' + token,\r\n // '_blank'\r\n // )\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 // console.log(path)\r\n this.$router.push(path)\r\n this.activeIndex = path\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 destroyed() {\r\n window.removeEventListener('mousemove', this.handleMousemove)\r\n },\r\n}\r\n\r\n",null]}