{"remainingRequest":"D:\\jenkins\\workspace\\examine-fvue\\node_modules\\vue-loader\\lib\\index.js??vue-loader-options!D:\\jenkins\\workspace\\examine-fvue\\src\\components\\layout\\SideMenu.vue?vue&type=script&lang=js&","dependencies":[{"path":"D:\\jenkins\\workspace\\examine-fvue\\src\\components\\layout\\SideMenu.vue","mtime":1667280204342},{"path":"D:\\jenkins\\workspace\\examine-fvue\\node_modules\\babel-loader\\lib\\index.js","mtime":315532800000},{"path":"D:\\jenkins\\workspace\\examine-fvue\\node_modules\\cache-loader\\dist\\cjs.js","mtime":499162500000},{"path":"D:\\jenkins\\workspace\\examine-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\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            } else {\r\n                this.filterSubMenu()\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        console.log(this.activeIndex, 'this.activeIndex')\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        } 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    },\r\n    created() {},\r\n    methods: {\r\n        // 菜单的收折\r\n        handleMenuCollapse() {\r\n            this.$emit('update:menuShow', !this.menuShow)\r\n        },\r\n        handleSelect(path, isJump) {\r\n            \r\n            console.log(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                console.log(m, 3333)\r\n                m && _this.$emit('menuChange', m)\r\n                // 外部打开\r\n                console.log(m)\r\n                if (m && m.openType == '2' && isJump) {\r\n                    console.log(m.alias.indexOf('href/') == -1)\r\n                    if (m.alias.indexOf('href/') == -1) {\r\n                        let openPath = '/frontPlat/' + m.alias\r\n                        console.log(openPath)\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                    // 内部打开\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            if (this.frontMenus) {\r\n                this.currentSubMenu = this.frontMenus\r\n                this.$refs.sidemenu.activeIndex = this.$route.path\r\n                return\r\n                let currentMenu = this.frontMenus.filter(\r\n                    (item) => item.alias == this.alias\r\n                )[0]\r\n                if (currentMenu) {\r\n                    this.currentSubMenu = currentMenu.children\r\n                }\r\n                this.$refs.sidemenu.activeIndex = this.$route.path\r\n            }\r\n        },\r\n    },\r\n}\r\n",null]}