1 |
- {"remainingRequest":"D:\\jiayue\\cemp-ui\\node_modules\\babel-loader\\lib\\index.js!D:\\jiayue\\cemp-ui\\src\\router\\avue-router.js","dependencies":[{"path":"D:\\jiayue\\cemp-ui\\src\\router\\avue-router.js","mtime":1619332227924},{"path":"D:\\jiayue\\cemp-ui\\node_modules\\cache-loader\\dist\\cjs.js","mtime":499162500000},{"path":"D:\\jiayue\\cemp-ui\\node_modules\\babel-loader\\lib\\index.js","mtime":315532800000}],"contextDependencies":[],"result":["import \"core-js/modules/es6.number.constructor\";\nimport \"core-js/modules/es6.regexp.replace\";\nimport _typeof from \"D:/jiayue/cemp-ui/node_modules/@babel/runtime/helpers/esm/typeof\";\nimport \"core-js/modules/es6.regexp.constructor\";\nimport \"core-js/modules/es7.array.includes\";\nimport \"core-js/modules/es6.string.includes\";\nimport \"core-js/modules/es6.object.keys\";\nimport \"core-js/modules/web.dom.iterable\";\n\nvar RouterPlugin = function RouterPlugin() {\n this.$router = null;\n this.$store = null;\n};\n\nRouterPlugin.install = function (router, store) {\n var _this = this;\n\n this.$router = router;\n this.$store = store;\n\n function isURL(s) {\n return /^http[s]?:\\/\\/.*/.test(s);\n }\n\n function objToform(obj) {\n var result = [];\n Object.keys(obj).forEach(function (ele) {\n result.push(\"\".concat(ele, \"=\").concat(obj[ele]));\n });\n return result.join('&');\n }\n\n this.$router.$avueRouter = {\n // 全局配置\n $website: this.$store.getters.website,\n $defaultTitle: 'cemp 运维系统',\n routerList: [],\n group: '',\n safe: this,\n // 设置标题\n setTitle: function setTitle(title) {\n title = title ? \"\".concat(title, \"\\u2014\\u2014\").concat(this.$defaultTitle) : this.$defaultTitle;\n document.title = title;\n },\n closeTag: function closeTag(value) {\n var tag = value || _this.$store.getters.tag;\n\n _this.$store.commit('DEL_TAG', tag);\n },\n // 处理路由\n getPath: function getPath(params) {\n var src = params.src;\n var result = src || '/';\n\n if (src.includes('http') || src.includes('https')) {\n result = \"/myiframe/urlPath?\".concat(objToform(params));\n }\n\n return result;\n },\n // 正则处理路由\n vaildPath: function vaildPath(list, path) {\n var result = false;\n list.forEach(function (ele) {\n if (new RegExp('^' + ele + '.*', 'g').test(path)) {\n result = true;\n }\n });\n return result;\n },\n // 设置路由值\n getValue: function getValue(route) {\n var value = '';\n\n if (route.query.src) {\n value = route.query.src;\n } else {\n value = route.path;\n }\n\n return value;\n },\n // 动态路由\n formatRoutes: function formatRoutes() {\n var _this2 = this;\n\n var aMenu = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];\n var first = arguments.length > 1 ? arguments[1] : undefined;\n var aRouter = [];\n var propsConfig = this.$website.menu.props;\n var propsDefault = {\n label: propsConfig.label || 'label',\n path: propsConfig.path || 'path',\n icon: propsConfig.icon || 'icon',\n children: propsConfig.children || 'children',\n meta: propsConfig.meta || 'meta'\n };\n if (aMenu.length === 0) return;\n\n var _loop = function _loop(i) {\n var oMenu = aMenu[i];\n if (_this2.routerList.includes(oMenu[propsDefault.path])) return {\n v: void 0\n };\n\n var path = function () {\n if (!oMenu[propsDefault.path]) {\n return;\n } else if (first) {\n return oMenu[propsDefault.path].replace('/index', '');\n } else {\n return oMenu[propsDefault.path];\n }\n }(); //特殊处理组件\n\n\n var _component = 'views' + oMenu.path;\n\n var name = oMenu[propsDefault.label];\n var icon = oMenu[propsDefault.icon];\n var children = oMenu[propsDefault.children];\n var meta = {\n keepAlive: Number(oMenu['keepAlive']) === 1\n };\n var isChild = children.length !== 0;\n var oRouter = {\n path: path,\n component: function component(resolve) {\n // 判断是否为首路由\n if (first) {\n require(['../page/index'], resolve); // 判断是否为多层路由\n\n } else if (isChild && !first) {\n require(['../page/index/layout'], resolve); // 判断是否为最终的页面视图\n\n } else {\n require([\"../\".concat(_component, \".vue\")], resolve);\n }\n },\n name: name,\n icon: icon,\n meta: meta,\n redirect: function () {\n if (!isChild && first && !isURL(path)) return \"\".concat(path, \"/index\");else return '';\n }(),\n // 处理是否为一级路由\n children: !isChild ? function () {\n if (first) {\n if (!isURL(path)) oMenu[propsDefault.path] = \"\".concat(path, \"/index\");\n return [{\n component: function component(resolve) {\n require([\"../\".concat(_component, \".vue\")], resolve);\n },\n icon: icon,\n name: name,\n meta: meta,\n path: 'index'\n }];\n }\n\n return [];\n }() : function () {\n return _this2.formatRoutes(children, false);\n }()\n };\n aRouter.push(oRouter);\n };\n\n for (var i = 0; i < aMenu.length; i++) {\n var _ret = _loop(i);\n\n if (_typeof(_ret) === \"object\") return _ret.v;\n }\n\n if (first) {\n if (!this.routerList.includes(aRouter[0][propsDefault.path])) {\n this.safe.$router.addRoutes(aRouter);\n this.routerList.push(aRouter[0][propsDefault.path]);\n }\n } else {\n return aRouter;\n }\n }\n };\n};\n\nexport default RouterPlugin;",{"version":3,"sources":["D:/jiayue/cemp-ui/src/router/avue-router.js"],"names":["RouterPlugin","$router","$store","install","router","store","isURL","s","test","objToform","obj","result","Object","keys","forEach","ele","push","join","$avueRouter","$website","getters","website","$defaultTitle","routerList","group","safe","setTitle","title","document","closeTag","value","tag","commit","getPath","params","src","includes","vaildPath","list","path","RegExp","getValue","route","query","formatRoutes","aMenu","first","aRouter","propsConfig","menu","props","propsDefault","label","icon","children","meta","length","i","oMenu","replace","component","name","keepAlive","Number","isChild","oRouter","resolve","require","redirect","addRoutes"],"mappings":"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","sourcesContent":["const RouterPlugin = function() {\r\n this.$router = null\r\n this.$store = null\r\n}\r\nRouterPlugin.install = function(router, store) {\r\n this.$router = router\r\n this.$store = store\r\n function isURL(s) {\r\n return /^http[s]?:\\/\\/.*/.test(s)\r\n }\r\n function objToform(obj) {\r\n const result = []\r\n Object.keys(obj).forEach(ele => {\r\n result.push(`${ele}=${obj[ele]}`)\r\n })\r\n return result.join('&')\r\n }\r\n this.$router.$avueRouter = {\r\n // 全局配置\r\n $website: this.$store.getters.website,\r\n $defaultTitle: 'cemp 运维系统',\r\n routerList: [],\r\n group: '',\r\n safe: this,\r\n // 设置标题\r\n setTitle: function(title) {\r\n title = title ? `${title}——${this.$defaultTitle}` : this.$defaultTitle\r\n document.title = title\r\n },\r\n closeTag: (value) => {\r\n const tag = value || this.$store.getters.tag\r\n this.$store.commit('DEL_TAG', tag)\r\n },\r\n // 处理路由\r\n getPath: function(params) {\r\n const { src } = params\r\n let result = src || '/'\r\n if (src.includes('http') || src.includes('https')) {\r\n result = `/myiframe/urlPath?${objToform(params)}`\r\n }\r\n return result\r\n },\r\n // 正则处理路由\r\n vaildPath: function(list, path) {\r\n let result = false\r\n list.forEach(ele => {\r\n if (new RegExp('^' + ele + '.*', 'g').test(path)) {\r\n result = true\r\n }\r\n })\r\n return result\r\n },\r\n // 设置路由值\r\n getValue: function(route) {\r\n let value = ''\r\n if (route.query.src) {\r\n value = route.query.src\r\n } else {\r\n value = route.path\r\n }\r\n return value\r\n },\r\n // 动态路由\r\n formatRoutes: function(aMenu = [], first) {\r\n const aRouter = []\r\n const propsConfig = this.$website.menu.props\r\n const propsDefault = {\r\n label: propsConfig.label || 'label',\r\n path: propsConfig.path || 'path',\r\n icon: propsConfig.icon || 'icon',\r\n children: propsConfig.children || 'children',\r\n meta: propsConfig.meta || 'meta'\r\n }\r\n if (aMenu.length === 0) return\r\n for (let i = 0; i < aMenu.length; i++) {\r\n const oMenu = aMenu[i]\r\n if (this.routerList.includes(oMenu[propsDefault.path])) return\r\n const path = (() => {\r\n if (!oMenu[propsDefault.path]) {\r\n return\r\n } else if (first) {\r\n return oMenu[propsDefault.path].replace('/index', '')\r\n } else {\r\n return oMenu[propsDefault.path]\r\n }\r\n })()\r\n\r\n //特殊处理组件\r\n const component = 'views' + oMenu.path\r\n\r\n const name = oMenu[propsDefault.label]\r\n\r\n const icon = oMenu[propsDefault.icon]\r\n\r\n const children = oMenu[propsDefault.children]\r\n\r\n const meta = {\r\n keepAlive: Number(oMenu['keepAlive']) === 1\r\n }\r\n const isChild = children.length !== 0\r\n const oRouter = {\r\n path: path,\r\n component(resolve) {\r\n // 判断是否为首路由\r\n if (first) {\r\n require(['../page/index'], resolve)\r\n\r\n // 判断是否为多层路由\r\n } else if (isChild && !first) {\r\n require(['../page/index/layout'], resolve)\r\n\r\n // 判断是否为最终的页面视图\r\n } else {\r\n require([`../${component}.vue`], resolve)\r\n }\r\n },\r\n name: name,\r\n icon: icon,\r\n meta: meta,\r\n redirect: (() => {\r\n if (!isChild && first && !isURL(path)) return `${path}/index`\r\n else return ''\r\n })(),\r\n // 处理是否为一级路由\r\n children: !isChild ? (() => {\r\n if (first) {\r\n if (!isURL(path)) oMenu[propsDefault.path] = `${path}/index`\r\n return [{\r\n component(resolve) { require([`../${component}.vue`], resolve) },\r\n icon: icon,\r\n name: name,\r\n meta: meta,\r\n path: 'index'\r\n }]\r\n }\r\n return []\r\n })() : (() => {\r\n return this.formatRoutes(children, false)\r\n })()\r\n }\r\n aRouter.push(oRouter)\r\n }\r\n if (first) {\r\n if (!this.routerList.includes(aRouter[0][propsDefault.path])) {\r\n this.safe.$router.addRoutes(aRouter)\r\n this.routerList.push(aRouter[0][propsDefault.path])\r\n }\r\n } else {\r\n return aRouter\r\n }\r\n }\r\n }\r\n}\r\nexport default RouterPlugin\r\n"]}]}
|