{"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]}