CodeMaster/node_modules/.cache/vue-loader/8f0d586b3a0e082ed09f7f6482fa57cb.json
2025-04-02 21:57:33 +08:00

1 line
6.6 KiB
JSON

{"remainingRequest":"/Users/shuguang/Desktop/毕设/CodeMaster/CodeMaster/node_modules/vue-loader/lib/index.js??vue-loader-options!/Users/shuguang/Desktop/毕设/CodeMaster/CodeMaster/src/layouts/GlobalLayout.vue?vue&type=script&lang=js","dependencies":[{"path":"/Users/shuguang/Desktop/毕设/CodeMaster/CodeMaster/src/layouts/GlobalLayout.vue","mtime":1742646402772},{"path":"/Users/shuguang/Desktop/毕设/CodeMaster/CodeMaster/node_modules/cache-loader/dist/cjs.js","mtime":1743264595665},{"path":"/Users/shuguang/Desktop/毕设/CodeMaster/CodeMaster/node_modules/babel-loader/lib/index.js","mtime":1743264596348},{"path":"/Users/shuguang/Desktop/毕设/CodeMaster/CodeMaster/node_modules/cache-loader/dist/cjs.js","mtime":1743264595665},{"path":"/Users/shuguang/Desktop/毕设/CodeMaster/CodeMaster/node_modules/vue-loader/lib/index.js","mtime":1743264596512}],"contextDependencies":[],"result":[{"type":"Buffer","data":"base64:CmltcG9ydCB7IG1hcEdldHRlcnMgfSBmcm9tICd2dWV4JzsKaW1wb3J0IHsgZmlsdGVyUm91dGVzIH0gZnJvbSAnQC9yb3V0ZXInOwppbXBvcnQgcm91dGVzIGZyb20gJ0Avcm91dGVyL3JvdXRlcyc7CmltcG9ydCBQcm9MYXlvdXQgZnJvbSAnQGFudC1kZXNpZ24tdnVlL3Byby1sYXlvdXQnOwppbXBvcnQgVGFiTGF5b3V0IGZyb20gJ0AvbGF5b3V0cy9UYWJMYXlvdXQnOwppbXBvcnQgTG9naW5TdGF0ZSBmcm9tICdAL2NvbXBvbmVudHMvY29tbW9uL0xvZ2luU3RhdGUudnVlJzsKCmV4cG9ydCBkZWZhdWx0IHsKICBuYW1lOiAnR2xvYmFsTGF5b3V0JywKICBjb21wb25lbnRzOiB7CiAgICBQcm9MYXlvdXQsCiAgICBMb2dpblN0YXRlLAogICAgVGFiTGF5b3V0LAogIH0sCiAgZGF0YSgpIHsKICAgIHJldHVybiB7CiAgICAgIGNvbGxhcHNlZDogZmFsc2UsCiAgICAgIGF1dG9IaWRlSGVhZGVyOiBmYWxzZSwKICAgICAgcXVlcnk6IHt9LAogICAgICBsYXlvdXQ6ICdzaWRlbWVudScsCiAgICAgIGNvbnRlbnRXaWR0aDogJ0ZsdWlkJywKICAgICAgdGhlbWU6ICdkYXJrJywKICAgICAgaXNNb2JpbGU6IGZhbHNlLAogICAgfTsKICB9LAogIGNvbXB1dGVkOiB7CiAgICAuLi5tYXBHZXR0ZXJzKFsncGVybWlzc2lvbnMnXSksCiAgICBtZW51cygpIHsKICAgICAgY29uc3Qgcm9vdCA9IHJvdXRlcy5maW5kKHYgPT4gdi5wYXRoID09PSAnLycpOwogICAgICByZXR1cm4gZmlsdGVyUm91dGVzKHJvb3Q/LmNoaWxkcmVuIHx8IFtdLCB0aGlzLnBlcm1pc3Npb25zKTsKICAgIH0sCiAgICByaWdodENvbnRlbnRDbGFzcygpIHsKICAgICAgcmV0dXJuIFsKICAgICAgICAnYW50LXByby1nbG9iYWwtaGVhZGVyLWluZGV4LXJpZ2h0JywKICAgICAgICB0aGlzLmxheW91dCA9PT0gJ3RvcG1lbnUnICYmIGBhbnQtcHJvLWdsb2JhbC1oZWFkZXItaW5kZXgtJHt0aGlzLnRoZW1lfWAsCiAgICAgIF07CiAgICB9LAogIH0sCiAgbWV0aG9kczogewogICAgaGFuZGxlQ29sbGFwc2UoY29sbGFwc2VkKSB7CiAgICAgIHRoaXMuY29sbGFwc2VkID0gY29sbGFwc2VkOwogICAgfSwKICAgIGhhbmRsZU1lZGlhUXVlcnkocXVlcnkpIHsKICAgICAgdGhpcy5xdWVyeSA9IHF1ZXJ5OwogICAgICBpZiAodGhpcy5pc01vYmlsZSAmJiAhcXVlcnlbJ3NjcmVlbi14cyddKSB7CiAgICAgICAgdGhpcy5pc01vYmlsZSA9IGZhbHNlOwogICAgICAgIHJldHVybjsKICAgICAgfQogICAgICBpZiAoIXRoaXMuaXNNb2JpbGUgJiYgcXVlcnlbJ3NjcmVlbi14cyddKSB7CiAgICAgICAgdGhpcy5pc01vYmlsZSA9IHRydWU7CiAgICAgICAgdGhpcy5jb2xsYXBzZWQgPSBmYWxzZTsKICAgICAgfQogICAgfSwKICB9LAp9Owo="},{"version":3,"sources":["GlobalLayout.vue"],"names":[],"mappings":";AAyCA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA","file":"GlobalLayout.vue","sourceRoot":"src/layouts","sourcesContent":["<template>\n <pro-layout\n :menus=\"menus\"\n :collapsed=\"collapsed\"\n :mediaQuery=\"query\"\n :isMobile=\"isMobile\"\n :handleMediaQuery=\"handleMediaQuery\"\n :handleCollapse=\"handleCollapse\"\n fixedHeader\n fixSiderbar\n >\n <template #menuHeaderRender>\n <a-avatar src=\"/logo.png\" :size=\"40\" />\n <h1>竞赛管理系统</h1>\n </template>\n <template #rightContentRender>\n <div :class=\"rightContentClass\">\n <LoginState />\n </div>\n </template>\n <template #footerRender>\n <div class=\"footer-container\">\n 校园信息化-竞赛管理系统 ©2024 Created by 陕西科技大学镐京学院\n </div>\n </template>\n <template #headerContentRender>\n <a-breadcrumb\n style=\"height: 64px; line-height: 64px\"\n class=\"breadcrumb\"\n :routes=\"$route.matched\"\n >\n <template #itemRender=\"{ route }\">\n {{ route.meta.title }}\n </template>\n </a-breadcrumb>\n </template>\n <TabLayout />\n </pro-layout>\n</template>\n\n<script>\nimport { mapGetters } from 'vuex';\nimport { filterRoutes } from '@/router';\nimport routes from '@/router/routes';\nimport ProLayout from '@ant-design-vue/pro-layout';\nimport TabLayout from '@/layouts/TabLayout';\nimport LoginState from '@/components/common/LoginState.vue';\n\nexport default {\n name: 'GlobalLayout',\n components: {\n ProLayout,\n LoginState,\n TabLayout,\n },\n data() {\n return {\n collapsed: false,\n autoHideHeader: false,\n query: {},\n layout: 'sidemenu',\n contentWidth: 'Fluid',\n theme: 'dark',\n isMobile: false,\n };\n },\n computed: {\n ...mapGetters(['permissions']),\n menus() {\n const root = routes.find(v => v.path === '/');\n return filterRoutes(root?.children || [], this.permissions);\n },\n rightContentClass() {\n return [\n 'ant-pro-global-header-index-right',\n this.layout === 'topmenu' && `ant-pro-global-header-index-${this.theme}`,\n ];\n },\n },\n methods: {\n handleCollapse(collapsed) {\n this.collapsed = collapsed;\n },\n handleMediaQuery(query) {\n this.query = query;\n if (this.isMobile && !query['screen-xs']) {\n this.isMobile = false;\n return;\n }\n if (!this.isMobile && query['screen-xs']) {\n this.isMobile = true;\n this.collapsed = false;\n }\n },\n },\n};\n</script>\n\n<style lang=\"less\">\n@import \"~ant-design-vue/es/style/themes/default.less\";\n\n.footer-container {\n text-align: center;\n}\n\n.ant-layout-footer {\n padding: 16px 24px;\n}\n\n.ant-pro-sider-menu-logo {\n background-color: #002140;\n}\n\n.ant-pro-basicLayout-content {\n margin: 10px 10px 0 10px;\n padding: 10px;\n background-color: white;\n}\n\n.ant-pro-global-header-index-right {\n margin-right: 8px;\n\n &.ant-pro-global-header-index-dark {\n .ant-pro-global-header-index-action {\n color: hsla(0, 0%, 100%, 0.85);\n\n &:hover {\n background: #1890ff;\n }\n }\n }\n\n .ant-pro-account-avatar {\n .antd-pro-global-header-index-avatar {\n margin: ~\"calc((@{layout-header-height} - 24px) / 2)\" 0;\n margin-right: 8px;\n color: @primary-color;\n vertical-align: top;\n background: rgba(255, 255, 255, 0.85);\n }\n }\n\n .menu {\n .anticon {\n margin-right: 8px;\n }\n\n .ant-dropdown-menu-item {\n min-width: 100px;\n }\n }\n}\n</style>\n"]}]}