style-0430: 优化页面样式

This commit is contained in:
Shu Guang 2025-04-06 20:20:57 +08:00
parent 5753d0c365
commit 6028118a63
35 changed files with 1647 additions and 652 deletions

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -1 +1 @@
{"remainingRequest":"/Users/shuguang/Desktop/毕设/CodeMaster/CodeMaster/node_modules/vue-loader/lib/index.js??vue-loader-options!/Users/shuguang/Desktop/毕设/CodeMaster/CodeMaster/src/components/common/UserLogin.vue?vue&type=template&id=7b6953ac&scoped=true","dependencies":[{"path":"/Users/shuguang/Desktop/毕设/CodeMaster/CodeMaster/src/components/common/UserLogin.vue","mtime":1743265759691},{"path":"/Users/shuguang/Desktop/毕设/CodeMaster/CodeMaster/node_modules/cache-loader/dist/cjs.js","mtime":1743264595665},{"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/vue-loader/lib/loaders/templateLoader.js","mtime":1743264597097},{"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:CjxkaXYgY2xhc3M9ImxvZ2luLWZvcm0iPgogIDxkaXYgY2xhc3M9InRpdGxlIj4KICAgIDxhLWF2YXRhciBzcmM9Ii9sb2dvLnBuZyIgOnNpemU9IjUwIiAvPgogICAgPHNwYW4+56ue6LWb566h55CG57O757ufPC9zcGFuPgogIDwvZGl2PgogIDxhLWZvcm0tbW9kZWwKICAgIGxheW91dD0idmVydGljYWwiCiAgICByZWY9ImZvcm0iCiAgICA6bW9kZWw9ImZvcm1EYXRhIgogICAgOnJ1bGVzPSJydWxlcyIKICAgIEBzdWJtaXQ9Im9uU3VibWl0IgogID4KICAgIDxhLWZvcm0tbW9kZWwtaXRlbSByZWY9InNUSWQiIHByb3A9InNUSWQiPgogICAgICA8YS1pbnB1dCB2LW1vZGVsPSJmb3JtRGF0YS5zVElkIiBwbGFjZWhvbGRlcj0i5a2m5Y+3L+W3peWPtyI+CiAgICAgICAgPGEtaWNvbgogICAgICAgICAgc2xvdD0icHJlZml4IgogICAgICAgICAgdHlwZT0idXNlciIKICAgICAgICAgIHN0eWxlPSJjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjI1KSIKICAgICAgICAvPgogICAgICA8L2EtaW5wdXQ+CiAgICA8L2EtZm9ybS1tb2RlbC1pdGVtPgogICAgPGEtZm9ybS1tb2RlbC1pdGVtIHJlZj0icGFzc3dvcmQiIHByb3A9InBhc3N3b3JkIj4KICAgICAgPGEtaW5wdXQtcGFzc3dvcmQgdi1tb2RlbD0iZm9ybURhdGEucGFzc3dvcmQiIHBsYWNlaG9sZGVyPSLlr4bnoIEiPgogICAgICAgIDxhLWljb24KICAgICAgICAgIHNsb3Q9InByZWZpeCIKICAgICAgICAgIHR5cGU9ImxvY2siCiAgICAgICAgICBzdHlsZT0iY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4yNSkiCiAgICAgICAgLz4KICAgICAgPC9hLWlucHV0LXBhc3N3b3JkPgogICAgPC9hLWZvcm0tbW9kZWwtaXRlbT4KICAgIDxhLWJ1dHRvbgogICAgICB0eXBlPSJwcmltYXJ5IgogICAgICBodG1sLXR5cGU9InN1Ym1pdCIKICAgICAgY2xhc3M9ImxvZ2luLWJ1dHRvbiIKICAgICAgOmxvYWRpbmc9ImxvYWRpbmciCiAgICAgIGJsb2NrCiAgICA+CiAgICAgIOeZu+W9lQogICAgPC9hLWJ1dHRvbj4KICA8L2EtZm9ybS1tb2RlbD4KPC9kaXY+Cg=="},null]}
{"remainingRequest":"/Users/shuguang/Desktop/毕设/CodeMaster/CodeMaster/node_modules/vue-loader/lib/index.js??vue-loader-options!/Users/shuguang/Desktop/毕设/CodeMaster/CodeMaster/src/components/common/UserLogin.vue?vue&type=template&id=7b6953ac&scoped=true","dependencies":[{"path":"/Users/shuguang/Desktop/毕设/CodeMaster/CodeMaster/src/components/common/UserLogin.vue","mtime":1743265761132},{"path":"/Users/shuguang/Desktop/毕设/CodeMaster/CodeMaster/node_modules/cache-loader/dist/cjs.js","mtime":1743264595665},{"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/vue-loader/lib/loaders/templateLoader.js","mtime":1743264597097},{"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:CjxkaXYgY2xhc3M9ImxvZ2luLWZvcm0iPgogIDxkaXYgY2xhc3M9InRpdGxlIj4KICAgIDxhLWF2YXRhciBzcmM9Ii9sb2dvLnBuZyIgOnNpemU9IjUwIiAvPgogICAgPHNwYW4+56ue6LWb566h55CG57O757ufPC9zcGFuPgogIDwvZGl2PgogIDxhLWZvcm0tbW9kZWwKICAgIGxheW91dD0idmVydGljYWwiCiAgICByZWY9ImZvcm0iCiAgICA6bW9kZWw9ImZvcm1EYXRhIgogICAgOnJ1bGVzPSJydWxlcyIKICAgIEBzdWJtaXQ9Im9uU3VibWl0IgogID4KICAgIDxhLWZvcm0tbW9kZWwtaXRlbSByZWY9InNUSWQiIHByb3A9InNUSWQiPgogICAgICA8YS1pbnB1dCB2LW1vZGVsPSJmb3JtRGF0YS5zVElkIiBwbGFjZWhvbGRlcj0i5a2m5Y+3L+W3peWPtyI+CiAgICAgICAgPGEtaWNvbgogICAgICAgICAgc2xvdD0icHJlZml4IgogICAgICAgICAgdHlwZT0idXNlciIKICAgICAgICAgIHN0eWxlPSJjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjI1KSIKICAgICAgICAvPgogICAgICA8L2EtaW5wdXQ+CiAgICA8L2EtZm9ybS1tb2RlbC1pdGVtPgogICAgPGEtZm9ybS1tb2RlbC1pdGVtIHJlZj0icGFzc3dvcmQiIHByb3A9InBhc3N3b3JkIj4KICAgICAgPGEtaW5wdXQtcGFzc3dvcmQgdi1tb2RlbD0iZm9ybURhdGEucGFzc3dvcmQiIHBsYWNlaG9sZGVyPSLlr4bnoIEiPgogICAgICAgIDxhLWljb24KICAgICAgICAgIHNsb3Q9InByZWZpeCIKICAgICAgICAgIHR5cGU9ImxvY2siCiAgICAgICAgICBzdHlsZT0iY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4yNSkiCiAgICAgICAgLz4KICAgICAgPC9hLWlucHV0LXBhc3N3b3JkPgogICAgPC9hLWZvcm0tbW9kZWwtaXRlbT4KICAgIDxhLWJ1dHRvbgogICAgICB0eXBlPSJwcmltYXJ5IgogICAgICBodG1sLXR5cGU9InN1Ym1pdCIKICAgICAgY2xhc3M9ImxvZ2luLWJ1dHRvbiIKICAgICAgOmxvYWRpbmc9ImxvYWRpbmciCiAgICAgIGJsb2NrCiAgICA+CiAgICAgIOeZu+W9lQogICAgPC9hLWJ1dHRvbj4KICA8L2EtZm9ybS1tb2RlbD4KPC9kaXY+Cg=="},null]}

File diff suppressed because one or more lines are too long

View File

@ -1 +1 @@
{"remainingRequest":"/Users/shuguang/Desktop/毕设/CodeMaster/CodeMaster/node_modules/vue-loader/lib/index.js??vue-loader-options!/Users/shuguang/Desktop/毕设/CodeMaster/CodeMaster/src/components/common/UserLogin.vue","dependencies":[{"path":"/Users/shuguang/Desktop/毕设/CodeMaster/CodeMaster/src/components/common/UserLogin.vue","mtime":1743265759691},{"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:aW1wb3J0IHsgcmVuZGVyLCBzdGF0aWNSZW5kZXJGbnMgfSBmcm9tICIuL1VzZXJMb2dpbi52dWU/dnVlJnR5cGU9dGVtcGxhdGUmaWQ9N2I2OTUzYWMmc2NvcGVkPXRydWUiCmltcG9ydCBzY3JpcHQgZnJvbSAiLi9Vc2VyTG9naW4udnVlP3Z1ZSZ0eXBlPXNjcmlwdCZsYW5nPWpzIgpleHBvcnQgKiBmcm9tICIuL1VzZXJMb2dpbi52dWU/dnVlJnR5cGU9c2NyaXB0Jmxhbmc9anMiCmltcG9ydCBzdHlsZTAgZnJvbSAiLi9Vc2VyTG9naW4udnVlP3Z1ZSZ0eXBlPXN0eWxlJmluZGV4PTAmaWQ9N2I2OTUzYWMmc2NvcGVkPXRydWUmbGFuZz1zdHlsdXMiCgoKLyogbm9ybWFsaXplIGNvbXBvbmVudCAqLwppbXBvcnQgbm9ybWFsaXplciBmcm9tICIhLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3J1bnRpbWUvY29tcG9uZW50Tm9ybWFsaXplci5qcyIKdmFyIGNvbXBvbmVudCA9IG5vcm1hbGl6ZXIoCiAgc2NyaXB0LAogIHJlbmRlciwKICBzdGF0aWNSZW5kZXJGbnMsCiAgZmFsc2UsCiAgbnVsbCwKICAiN2I2OTUzYWMiLAogIG51bGwKICAKKQoKLyogaG90IHJlbG9hZCAqLwppZiAobW9kdWxlLmhvdCkgewogIHZhciBhcGkgPSByZXF1aXJlKCIvVXNlcnMvc2h1Z3VhbmcvRGVza3RvcC/mr5Xorr4vQ29kZU1hc3Rlci9Db2RlTWFzdGVyL25vZGVfbW9kdWxlcy92dWUtaG90LXJlbG9hZC1hcGkvZGlzdC9pbmRleC5qcyIpCiAgYXBpLmluc3RhbGwocmVxdWlyZSgndnVlJykpCiAgaWYgKGFwaS5jb21wYXRpYmxlKSB7CiAgICBtb2R1bGUuaG90LmFjY2VwdCgpCiAgICBpZiAoIWFwaS5pc1JlY29yZGVkKCc3YjY5NTNhYycpKSB7CiAgICAgIGFwaS5jcmVhdGVSZWNvcmQoJzdiNjk1M2FjJywgY29tcG9uZW50Lm9wdGlvbnMpCiAgICB9IGVsc2UgewogICAgICBhcGkucmVsb2FkKCc3YjY5NTNhYycsIGNvbXBvbmVudC5vcHRpb25zKQogICAgfQogICAgbW9kdWxlLmhvdC5hY2NlcHQoIi4vVXNlckxvZ2luLnZ1ZT92dWUmdHlwZT10ZW1wbGF0ZSZpZD03YjY5NTNhYyZzY29wZWQ9dHJ1ZSIsIGZ1bmN0aW9uICgpIHsKICAgICAgYXBpLnJlcmVuZGVyKCc3YjY5NTNhYycsIHsKICAgICAgICByZW5kZXI6IHJlbmRlciwKICAgICAgICBzdGF0aWNSZW5kZXJGbnM6IHN0YXRpY1JlbmRlckZucwogICAgICB9KQogICAgfSkKICB9Cn0KY29tcG9uZW50Lm9wdGlvbnMuX19maWxlID0gInNyYy9jb21wb25lbnRzL2NvbW1vbi9Vc2VyTG9naW4udnVlIgpleHBvcnQgZGVmYXVsdCBjb21wb25lbnQuZXhwb3J0cw=="}]}
{"remainingRequest":"/Users/shuguang/Desktop/毕设/CodeMaster/CodeMaster/node_modules/vue-loader/lib/index.js??vue-loader-options!/Users/shuguang/Desktop/毕设/CodeMaster/CodeMaster/src/components/common/UserLogin.vue","dependencies":[{"path":"/Users/shuguang/Desktop/毕设/CodeMaster/CodeMaster/src/components/common/UserLogin.vue","mtime":1743265761132},{"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:aW1wb3J0IHsgcmVuZGVyLCBzdGF0aWNSZW5kZXJGbnMgfSBmcm9tICIuL1VzZXJMb2dpbi52dWU/dnVlJnR5cGU9dGVtcGxhdGUmaWQ9N2I2OTUzYWMmc2NvcGVkPXRydWUiCmltcG9ydCBzY3JpcHQgZnJvbSAiLi9Vc2VyTG9naW4udnVlP3Z1ZSZ0eXBlPXNjcmlwdCZsYW5nPWpzIgpleHBvcnQgKiBmcm9tICIuL1VzZXJMb2dpbi52dWU/dnVlJnR5cGU9c2NyaXB0Jmxhbmc9anMiCmltcG9ydCBzdHlsZTAgZnJvbSAiLi9Vc2VyTG9naW4udnVlP3Z1ZSZ0eXBlPXN0eWxlJmluZGV4PTAmaWQ9N2I2OTUzYWMmc2NvcGVkPXRydWUmbGFuZz1zdHlsdXMiCgoKLyogbm9ybWFsaXplIGNvbXBvbmVudCAqLwppbXBvcnQgbm9ybWFsaXplciBmcm9tICIhLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3J1bnRpbWUvY29tcG9uZW50Tm9ybWFsaXplci5qcyIKdmFyIGNvbXBvbmVudCA9IG5vcm1hbGl6ZXIoCiAgc2NyaXB0LAogIHJlbmRlciwKICBzdGF0aWNSZW5kZXJGbnMsCiAgZmFsc2UsCiAgbnVsbCwKICAiN2I2OTUzYWMiLAogIG51bGwKICAKKQoKLyogaG90IHJlbG9hZCAqLwppZiAobW9kdWxlLmhvdCkgewogIHZhciBhcGkgPSByZXF1aXJlKCIvVXNlcnMvc2h1Z3VhbmcvRGVza3RvcC/mr5Xorr4vQ29kZU1hc3Rlci9Db2RlTWFzdGVyL25vZGVfbW9kdWxlcy92dWUtaG90LXJlbG9hZC1hcGkvZGlzdC9pbmRleC5qcyIpCiAgYXBpLmluc3RhbGwocmVxdWlyZSgndnVlJykpCiAgaWYgKGFwaS5jb21wYXRpYmxlKSB7CiAgICBtb2R1bGUuaG90LmFjY2VwdCgpCiAgICBpZiAoIWFwaS5pc1JlY29yZGVkKCc3YjY5NTNhYycpKSB7CiAgICAgIGFwaS5jcmVhdGVSZWNvcmQoJzdiNjk1M2FjJywgY29tcG9uZW50Lm9wdGlvbnMpCiAgICB9IGVsc2UgewogICAgICBhcGkucmVsb2FkKCc3YjY5NTNhYycsIGNvbXBvbmVudC5vcHRpb25zKQogICAgfQogICAgbW9kdWxlLmhvdC5hY2NlcHQoIi4vVXNlckxvZ2luLnZ1ZT92dWUmdHlwZT10ZW1wbGF0ZSZpZD03YjY5NTNhYyZzY29wZWQ9dHJ1ZSIsIGZ1bmN0aW9uICgpIHsKICAgICAgYXBpLnJlcmVuZGVyKCc3YjY5NTNhYycsIHsKICAgICAgICByZW5kZXI6IHJlbmRlciwKICAgICAgICBzdGF0aWNSZW5kZXJGbnM6IHN0YXRpY1JlbmRlckZucwogICAgICB9KQogICAgfSkKICB9Cn0KY29tcG9uZW50Lm9wdGlvbnMuX19maWxlID0gInNyYy9jb21wb25lbnRzL2NvbW1vbi9Vc2VyTG9naW4udnVlIgpleHBvcnQgZGVmYXVsdCBjb21wb25lbnQuZXhwb3J0cw=="}]}

File diff suppressed because one or more lines are too long

View File

@ -1 +1 @@
{"remainingRequest":"/Users/shuguang/Desktop/毕设/CodeMaster/CodeMaster/node_modules/vue-loader/lib/index.js??vue-loader-options!/Users/shuguang/Desktop/毕设/CodeMaster/CodeMaster/src/views/communtiy/Article.vue","dependencies":[{"path":"/Users/shuguang/Desktop/毕设/CodeMaster/CodeMaster/src/views/communtiy/Article.vue","mtime":1742646402776},{"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:aW1wb3J0IHsgcmVuZGVyLCBzdGF0aWNSZW5kZXJGbnMgfSBmcm9tICIuL0FydGljbGUudnVlP3Z1ZSZ0eXBlPXRlbXBsYXRlJmlkPTMzZDdlMGZjJnNjb3BlZD10cnVlIgppbXBvcnQgc2NyaXB0IGZyb20gIi4vQXJ0aWNsZS52dWU/dnVlJnR5cGU9c2NyaXB0Jmxhbmc9anMiCmV4cG9ydCAqIGZyb20gIi4vQXJ0aWNsZS52dWU/dnVlJnR5cGU9c2NyaXB0Jmxhbmc9anMiCmltcG9ydCBzdHlsZTAgZnJvbSAiLi9BcnRpY2xlLnZ1ZT92dWUmdHlwZT1zdHlsZSZpbmRleD0wJmlkPTMzZDdlMGZjJmxhbmc9bGVzcyZzY29wZWQ9dHJ1ZSIKCgovKiBub3JtYWxpemUgY29tcG9uZW50ICovCmltcG9ydCBub3JtYWxpemVyIGZyb20gIiEuLi8uLi8uLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvcnVudGltZS9jb21wb25lbnROb3JtYWxpemVyLmpzIgp2YXIgY29tcG9uZW50ID0gbm9ybWFsaXplcigKICBzY3JpcHQsCiAgcmVuZGVyLAogIHN0YXRpY1JlbmRlckZucywKICBmYWxzZSwKICBudWxsLAogICIzM2Q3ZTBmYyIsCiAgbnVsbAogIAopCgovKiBob3QgcmVsb2FkICovCmlmIChtb2R1bGUuaG90KSB7CiAgdmFyIGFwaSA9IHJlcXVpcmUoIi9Vc2Vycy9zaHVndWFuZy9EZXNrdG9wL+avleiuvi9Db2RlTWFzdGVyL0NvZGVNYXN0ZXIvbm9kZV9tb2R1bGVzL3Z1ZS1ob3QtcmVsb2FkLWFwaS9kaXN0L2luZGV4LmpzIikKICBhcGkuaW5zdGFsbChyZXF1aXJlKCd2dWUnKSkKICBpZiAoYXBpLmNvbXBhdGlibGUpIHsKICAgIG1vZHVsZS5ob3QuYWNjZXB0KCkKICAgIGlmICghYXBpLmlzUmVjb3JkZWQoJzMzZDdlMGZjJykpIHsKICAgICAgYXBpLmNyZWF0ZVJlY29yZCgnMzNkN2UwZmMnLCBjb21wb25lbnQub3B0aW9ucykKICAgIH0gZWxzZSB7CiAgICAgIGFwaS5yZWxvYWQoJzMzZDdlMGZjJywgY29tcG9uZW50Lm9wdGlvbnMpCiAgICB9CiAgICBtb2R1bGUuaG90LmFjY2VwdCgiLi9BcnRpY2xlLnZ1ZT92dWUmdHlwZT10ZW1wbGF0ZSZpZD0zM2Q3ZTBmYyZzY29wZWQ9dHJ1ZSIsIGZ1bmN0aW9uICgpIHsKICAgICAgYXBpLnJlcmVuZGVyKCczM2Q3ZTBmYycsIHsKICAgICAgICByZW5kZXI6IHJlbmRlciwKICAgICAgICBzdGF0aWNSZW5kZXJGbnM6IHN0YXRpY1JlbmRlckZucwogICAgICB9KQogICAgfSkKICB9Cn0KY29tcG9uZW50Lm9wdGlvbnMuX19maWxlID0gInNyYy92aWV3cy9jb21tdW50aXkvQXJ0aWNsZS52dWUiCmV4cG9ydCBkZWZhdWx0IGNvbXBvbmVudC5leHBvcnRz"}]}
{"remainingRequest":"/Users/shuguang/Desktop/毕设/CodeMaster/CodeMaster/node_modules/vue-loader/lib/index.js??vue-loader-options!/Users/shuguang/Desktop/毕设/CodeMaster/CodeMaster/src/views/communtiy/Article.vue","dependencies":[{"path":"/Users/shuguang/Desktop/毕设/CodeMaster/CodeMaster/src/views/communtiy/Article.vue","mtime":1743941101859},{"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:aW1wb3J0IHsgcmVuZGVyLCBzdGF0aWNSZW5kZXJGbnMgfSBmcm9tICIuL0FydGljbGUudnVlP3Z1ZSZ0eXBlPXRlbXBsYXRlJmlkPTMzZDdlMGZjJnNjb3BlZD10cnVlIgppbXBvcnQgc2NyaXB0IGZyb20gIi4vQXJ0aWNsZS52dWU/dnVlJnR5cGU9c2NyaXB0Jmxhbmc9anMiCmV4cG9ydCAqIGZyb20gIi4vQXJ0aWNsZS52dWU/dnVlJnR5cGU9c2NyaXB0Jmxhbmc9anMiCmltcG9ydCBzdHlsZTAgZnJvbSAiLi9BcnRpY2xlLnZ1ZT92dWUmdHlwZT1zdHlsZSZpbmRleD0wJmlkPTMzZDdlMGZjJmxhbmc9bGVzcyZzY29wZWQ9dHJ1ZSIKCgovKiBub3JtYWxpemUgY29tcG9uZW50ICovCmltcG9ydCBub3JtYWxpemVyIGZyb20gIiEuLi8uLi8uLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvcnVudGltZS9jb21wb25lbnROb3JtYWxpemVyLmpzIgp2YXIgY29tcG9uZW50ID0gbm9ybWFsaXplcigKICBzY3JpcHQsCiAgcmVuZGVyLAogIHN0YXRpY1JlbmRlckZucywKICBmYWxzZSwKICBudWxsLAogICIzM2Q3ZTBmYyIsCiAgbnVsbAogIAopCgovKiBob3QgcmVsb2FkICovCmlmIChtb2R1bGUuaG90KSB7CiAgdmFyIGFwaSA9IHJlcXVpcmUoIi9Vc2Vycy9zaHVndWFuZy9EZXNrdG9wL+avleiuvi9Db2RlTWFzdGVyL0NvZGVNYXN0ZXIvbm9kZV9tb2R1bGVzL3Z1ZS1ob3QtcmVsb2FkLWFwaS9kaXN0L2luZGV4LmpzIikKICBhcGkuaW5zdGFsbChyZXF1aXJlKCd2dWUnKSkKICBpZiAoYXBpLmNvbXBhdGlibGUpIHsKICAgIG1vZHVsZS5ob3QuYWNjZXB0KCkKICAgIGlmICghYXBpLmlzUmVjb3JkZWQoJzMzZDdlMGZjJykpIHsKICAgICAgYXBpLmNyZWF0ZVJlY29yZCgnMzNkN2UwZmMnLCBjb21wb25lbnQub3B0aW9ucykKICAgIH0gZWxzZSB7CiAgICAgIGFwaS5yZWxvYWQoJzMzZDdlMGZjJywgY29tcG9uZW50Lm9wdGlvbnMpCiAgICB9CiAgICBtb2R1bGUuaG90LmFjY2VwdCgiLi9BcnRpY2xlLnZ1ZT92dWUmdHlwZT10ZW1wbGF0ZSZpZD0zM2Q3ZTBmYyZzY29wZWQ9dHJ1ZSIsIGZ1bmN0aW9uICgpIHsKICAgICAgYXBpLnJlcmVuZGVyKCczM2Q3ZTBmYycsIHsKICAgICAgICByZW5kZXI6IHJlbmRlciwKICAgICAgICBzdGF0aWNSZW5kZXJGbnM6IHN0YXRpY1JlbmRlckZucwogICAgICB9KQogICAgfSkKICB9Cn0KY29tcG9uZW50Lm9wdGlvbnMuX19maWxlID0gInNyYy92aWV3cy9jb21tdW50aXkvQXJ0aWNsZS52dWUiCmV4cG9ydCBkZWZhdWx0IGNvbXBvbmVudC5leHBvcnRz"}]}

File diff suppressed because one or more lines are too long

View File

@ -1 +1 @@
{"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=template&id=6cf2f728","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/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/vue-loader/lib/loaders/templateLoader.js","mtime":1743264597097},{"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:Cjxwcm8tbGF5b3V0CiAgOm1lbnVzPSJtZW51cyIKICA6Y29sbGFwc2VkPSJjb2xsYXBzZWQiCiAgOm1lZGlhUXVlcnk9InF1ZXJ5IgogIDppc01vYmlsZT0iaXNNb2JpbGUiCiAgOmhhbmRsZU1lZGlhUXVlcnk9ImhhbmRsZU1lZGlhUXVlcnkiCiAgOmhhbmRsZUNvbGxhcHNlPSJoYW5kbGVDb2xsYXBzZSIKICBmaXhlZEhlYWRlcgogIGZpeFNpZGVyYmFyCj4KICA8dGVtcGxhdGUgI21lbnVIZWFkZXJSZW5kZXI+CiAgICA8YS1hdmF0YXIgc3JjPSIvbG9nby5wbmciIDpzaXplPSI0MCIgLz4KICAgIDxoMT7nq57otZvnrqHnkIbns7vnu588L2gxPgogIDwvdGVtcGxhdGU+CiAgPHRlbXBsYXRlICNyaWdodENvbnRlbnRSZW5kZXI+CiAgICA8ZGl2IDpjbGFzcz0icmlnaHRDb250ZW50Q2xhc3MiPgogICAgICA8TG9naW5TdGF0ZSAvPgogICAgPC9kaXY+CiAgPC90ZW1wbGF0ZT4KICA8dGVtcGxhdGUgI2Zvb3RlclJlbmRlcj4KICAgIDxkaXYgY2xhc3M9ImZvb3Rlci1jb250YWluZXIiPgogICAgICDmoKHlm63kv6Hmga/ljJYt56ue6LWb566h55CG57O757ufIMKpMjAyNCBDcmVhdGVkIGJ5IOmZleilv+enkeaKgOWkp+WtpumVkOS6rOWtpumZogogICAgPC9kaXY+CiAgPC90ZW1wbGF0ZT4KICA8dGVtcGxhdGUgI2hlYWRlckNvbnRlbnRSZW5kZXI+CiAgICA8YS1icmVhZGNydW1iCiAgICAgIHN0eWxlPSJoZWlnaHQ6IDY0cHg7IGxpbmUtaGVpZ2h0OiA2NHB4IgogICAgICBjbGFzcz0iYnJlYWRjcnVtYiIKICAgICAgOnJvdXRlcz0iJHJvdXRlLm1hdGNoZWQiCiAgICA+CiAgICAgIDx0ZW1wbGF0ZSAjaXRlbVJlbmRlcj0ieyByb3V0ZSB9Ij4KICAgICAgICB7eyByb3V0ZS5tZXRhLnRpdGxlIH19CiAgICAgIDwvdGVtcGxhdGU+CiAgICA8L2EtYnJlYWRjcnVtYj4KICA8L3RlbXBsYXRlPgogIDxUYWJMYXlvdXQgLz4KPC9wcm8tbGF5b3V0Pgo="},null]}
{"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=template&id=6cf2f728","dependencies":[{"path":"/Users/shuguang/Desktop/毕设/CodeMaster/CodeMaster/src/layouts/GlobalLayout.vue","mtime":1743939532635},{"path":"/Users/shuguang/Desktop/毕设/CodeMaster/CodeMaster/node_modules/cache-loader/dist/cjs.js","mtime":1743264595665},{"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/vue-loader/lib/loaders/templateLoader.js","mtime":1743264597097},{"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:Cjxwcm8tbGF5b3V0CiAgOm1lbnVzPSJtZW51cyIKICA6Y29sbGFwc2VkPSJjb2xsYXBzZWQiCiAgOm1lZGlhUXVlcnk9InF1ZXJ5IgogIDppc01vYmlsZT0iaXNNb2JpbGUiCiAgOmhhbmRsZU1lZGlhUXVlcnk9ImhhbmRsZU1lZGlhUXVlcnkiCiAgOmhhbmRsZUNvbGxhcHNlPSJoYW5kbGVDb2xsYXBzZSIKICBmaXhlZEhlYWRlcgogIGZpeFNpZGVyYmFyCj4KICA8dGVtcGxhdGUgI21lbnVIZWFkZXJSZW5kZXI+CiAgICA8YS1hdmF0YXIgc3JjPSIvbG9nby5wbmciIDpzaXplPSI0MCIgLz4KICAgIDxoMT7nq57otZvnrqHnkIbns7vnu588L2gxPgogIDwvdGVtcGxhdGU+CiAgPHRlbXBsYXRlICNyaWdodENvbnRlbnRSZW5kZXI+CiAgICA8ZGl2IDpjbGFzcz0icmlnaHRDb250ZW50Q2xhc3MiPgogICAgICA8TG9naW5TdGF0ZSAvPgogICAgPC9kaXY+CiAgPC90ZW1wbGF0ZT4KICA8dGVtcGxhdGUgI2Zvb3RlclJlbmRlcj4KICAgIDxkaXYgY2xhc3M9ImZvb3Rlci1jb250YWluZXIiPgogICAgICDmoKHlm63kv6Hmga/ljJYt56ue6LWb566h55CG57O757ufIMKpMjAyNCBDcmVhdGVkIGJ5IOmZleilv+enkeaKgOWkp+WtpumVkOS6rOWtpumZogogICAgPC9kaXY+CiAgPC90ZW1wbGF0ZT4KICA8dGVtcGxhdGUgI2hlYWRlckNvbnRlbnRSZW5kZXI+CiAgICA8YS1icmVhZGNydW1iCiAgICAgIHN0eWxlPSJoZWlnaHQ6IDY0cHg7IGxpbmUtaGVpZ2h0OiA2NHB4IgogICAgICBjbGFzcz0iYnJlYWRjcnVtYiIKICAgICAgOnJvdXRlcz0iJHJvdXRlLm1hdGNoZWQiCiAgICA+CiAgICAgIDx0ZW1wbGF0ZSAjaXRlbVJlbmRlcj0ieyByb3V0ZSB9Ij4KICAgICAgICB7eyByb3V0ZS5tZXRhLnRpdGxlIH19CiAgICAgIDwvdGVtcGxhdGU+CiAgICA8L2EtYnJlYWRjcnVtYj4KICA8L3RlbXBsYXRlPgogIDxUYWJMYXlvdXQgLz4KPC9wcm8tbGF5b3V0Pgo="},null]}

View File

@ -1 +1 @@
{"remainingRequest":"/Users/shuguang/Desktop/毕设/CodeMaster/CodeMaster/node_modules/vue-loader/lib/index.js??vue-loader-options!/Users/shuguang/Desktop/毕设/CodeMaster/CodeMaster/src/views/account/center/index.vue","dependencies":[{"path":"/Users/shuguang/Desktop/毕设/CodeMaster/CodeMaster/src/views/account/center/index.vue","mtime":1742646402775},{"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:aW1wb3J0IHsgcmVuZGVyLCBzdGF0aWNSZW5kZXJGbnMgfSBmcm9tICIuL2luZGV4LnZ1ZT92dWUmdHlwZT10ZW1wbGF0ZSZpZD03MDZiOWQ1NCZzY29wZWQ9dHJ1ZSIKaW1wb3J0IHNjcmlwdCBmcm9tICIuL2luZGV4LnZ1ZT92dWUmdHlwZT1zY3JpcHQmbGFuZz1qcyIKZXhwb3J0ICogZnJvbSAiLi9pbmRleC52dWU/dnVlJnR5cGU9c2NyaXB0Jmxhbmc9anMiCmltcG9ydCBzdHlsZTAgZnJvbSAiLi9pbmRleC52dWU/dnVlJnR5cGU9c3R5bGUmaW5kZXg9MCZpZD03MDZiOWQ1NCZsYW5nPWxlc3Mmc2NvcGVkPXRydWUiCgoKLyogbm9ybWFsaXplIGNvbXBvbmVudCAqLwppbXBvcnQgbm9ybWFsaXplciBmcm9tICIhLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3J1bnRpbWUvY29tcG9uZW50Tm9ybWFsaXplci5qcyIKdmFyIGNvbXBvbmVudCA9IG5vcm1hbGl6ZXIoCiAgc2NyaXB0LAogIHJlbmRlciwKICBzdGF0aWNSZW5kZXJGbnMsCiAgZmFsc2UsCiAgbnVsbCwKICAiNzA2YjlkNTQiLAogIG51bGwKICAKKQoKLyogaG90IHJlbG9hZCAqLwppZiAobW9kdWxlLmhvdCkgewogIHZhciBhcGkgPSByZXF1aXJlKCIvVXNlcnMvc2h1Z3VhbmcvRGVza3RvcC/mr5Xorr4vQ29kZU1hc3Rlci9Db2RlTWFzdGVyL25vZGVfbW9kdWxlcy92dWUtaG90LXJlbG9hZC1hcGkvZGlzdC9pbmRleC5qcyIpCiAgYXBpLmluc3RhbGwocmVxdWlyZSgndnVlJykpCiAgaWYgKGFwaS5jb21wYXRpYmxlKSB7CiAgICBtb2R1bGUuaG90LmFjY2VwdCgpCiAgICBpZiAoIWFwaS5pc1JlY29yZGVkKCc3MDZiOWQ1NCcpKSB7CiAgICAgIGFwaS5jcmVhdGVSZWNvcmQoJzcwNmI5ZDU0JywgY29tcG9uZW50Lm9wdGlvbnMpCiAgICB9IGVsc2UgewogICAgICBhcGkucmVsb2FkKCc3MDZiOWQ1NCcsIGNvbXBvbmVudC5vcHRpb25zKQogICAgfQogICAgbW9kdWxlLmhvdC5hY2NlcHQoIi4vaW5kZXgudnVlP3Z1ZSZ0eXBlPXRlbXBsYXRlJmlkPTcwNmI5ZDU0JnNjb3BlZD10cnVlIiwgZnVuY3Rpb24gKCkgewogICAgICBhcGkucmVyZW5kZXIoJzcwNmI5ZDU0JywgewogICAgICAgIHJlbmRlcjogcmVuZGVyLAogICAgICAgIHN0YXRpY1JlbmRlckZuczogc3RhdGljUmVuZGVyRm5zCiAgICAgIH0pCiAgICB9KQogIH0KfQpjb21wb25lbnQub3B0aW9ucy5fX2ZpbGUgPSAic3JjL3ZpZXdzL2FjY291bnQvY2VudGVyL2luZGV4LnZ1ZSIKZXhwb3J0IGRlZmF1bHQgY29tcG9uZW50LmV4cG9ydHM="}]}
{"remainingRequest":"/Users/shuguang/Desktop/毕设/CodeMaster/CodeMaster/node_modules/vue-loader/lib/index.js??vue-loader-options!/Users/shuguang/Desktop/毕设/CodeMaster/CodeMaster/src/views/account/center/index.vue","dependencies":[{"path":"/Users/shuguang/Desktop/毕设/CodeMaster/CodeMaster/src/views/account/center/index.vue","mtime":1743941931949},{"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:aW1wb3J0IHsgcmVuZGVyLCBzdGF0aWNSZW5kZXJGbnMgfSBmcm9tICIuL2luZGV4LnZ1ZT92dWUmdHlwZT10ZW1wbGF0ZSZpZD03MDZiOWQ1NCZzY29wZWQ9dHJ1ZSIKaW1wb3J0IHNjcmlwdCBmcm9tICIuL2luZGV4LnZ1ZT92dWUmdHlwZT1zY3JpcHQmbGFuZz1qcyIKZXhwb3J0ICogZnJvbSAiLi9pbmRleC52dWU/dnVlJnR5cGU9c2NyaXB0Jmxhbmc9anMiCmltcG9ydCBzdHlsZTAgZnJvbSAiLi9pbmRleC52dWU/dnVlJnR5cGU9c3R5bGUmaW5kZXg9MCZpZD03MDZiOWQ1NCZsYW5nPWxlc3Mmc2NvcGVkPXRydWUiCgoKLyogbm9ybWFsaXplIGNvbXBvbmVudCAqLwppbXBvcnQgbm9ybWFsaXplciBmcm9tICIhLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3J1bnRpbWUvY29tcG9uZW50Tm9ybWFsaXplci5qcyIKdmFyIGNvbXBvbmVudCA9IG5vcm1hbGl6ZXIoCiAgc2NyaXB0LAogIHJlbmRlciwKICBzdGF0aWNSZW5kZXJGbnMsCiAgZmFsc2UsCiAgbnVsbCwKICAiNzA2YjlkNTQiLAogIG51bGwKICAKKQoKLyogaG90IHJlbG9hZCAqLwppZiAobW9kdWxlLmhvdCkgewogIHZhciBhcGkgPSByZXF1aXJlKCIvVXNlcnMvc2h1Z3VhbmcvRGVza3RvcC/mr5Xorr4vQ29kZU1hc3Rlci9Db2RlTWFzdGVyL25vZGVfbW9kdWxlcy92dWUtaG90LXJlbG9hZC1hcGkvZGlzdC9pbmRleC5qcyIpCiAgYXBpLmluc3RhbGwocmVxdWlyZSgndnVlJykpCiAgaWYgKGFwaS5jb21wYXRpYmxlKSB7CiAgICBtb2R1bGUuaG90LmFjY2VwdCgpCiAgICBpZiAoIWFwaS5pc1JlY29yZGVkKCc3MDZiOWQ1NCcpKSB7CiAgICAgIGFwaS5jcmVhdGVSZWNvcmQoJzcwNmI5ZDU0JywgY29tcG9uZW50Lm9wdGlvbnMpCiAgICB9IGVsc2UgewogICAgICBhcGkucmVsb2FkKCc3MDZiOWQ1NCcsIGNvbXBvbmVudC5vcHRpb25zKQogICAgfQogICAgbW9kdWxlLmhvdC5hY2NlcHQoIi4vaW5kZXgudnVlP3Z1ZSZ0eXBlPXRlbXBsYXRlJmlkPTcwNmI5ZDU0JnNjb3BlZD10cnVlIiwgZnVuY3Rpb24gKCkgewogICAgICBhcGkucmVyZW5kZXIoJzcwNmI5ZDU0JywgewogICAgICAgIHJlbmRlcjogcmVuZGVyLAogICAgICAgIHN0YXRpY1JlbmRlckZuczogc3RhdGljUmVuZGVyRm5zCiAgICAgIH0pCiAgICB9KQogIH0KfQpjb21wb25lbnQub3B0aW9ucy5fX2ZpbGUgPSAic3JjL3ZpZXdzL2FjY291bnQvY2VudGVyL2luZGV4LnZ1ZSIKZXhwb3J0IGRlZmF1bHQgY29tcG9uZW50LmV4cG9ydHM="}]}

File diff suppressed because one or more lines are too long

View File

@ -1 +1 @@
{"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","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/vue-loader/lib/index.js","mtime":1743264596512}],"contextDependencies":[],"result":[{"type":"Buffer","data":"base64:aW1wb3J0IHsgcmVuZGVyLCBzdGF0aWNSZW5kZXJGbnMgfSBmcm9tICIuL0dsb2JhbExheW91dC52dWU/dnVlJnR5cGU9dGVtcGxhdGUmaWQ9NmNmMmY3MjgiCmltcG9ydCBzY3JpcHQgZnJvbSAiLi9HbG9iYWxMYXlvdXQudnVlP3Z1ZSZ0eXBlPXNjcmlwdCZsYW5nPWpzIgpleHBvcnQgKiBmcm9tICIuL0dsb2JhbExheW91dC52dWU/dnVlJnR5cGU9c2NyaXB0Jmxhbmc9anMiCmltcG9ydCBzdHlsZTAgZnJvbSAiLi9HbG9iYWxMYXlvdXQudnVlP3Z1ZSZ0eXBlPXN0eWxlJmluZGV4PTAmaWQ9NmNmMmY3MjgmbGFuZz1sZXNzIgoKCi8qIG5vcm1hbGl6ZSBjb21wb25lbnQgKi8KaW1wb3J0IG5vcm1hbGl6ZXIgZnJvbSAiIS4uLy4uL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9ydW50aW1lL2NvbXBvbmVudE5vcm1hbGl6ZXIuanMiCnZhciBjb21wb25lbnQgPSBub3JtYWxpemVyKAogIHNjcmlwdCwKICByZW5kZXIsCiAgc3RhdGljUmVuZGVyRm5zLAogIGZhbHNlLAogIG51bGwsCiAgbnVsbCwKICBudWxsCiAgCikKCi8qIGhvdCByZWxvYWQgKi8KaWYgKG1vZHVsZS5ob3QpIHsKICB2YXIgYXBpID0gcmVxdWlyZSgiL1VzZXJzL3NodWd1YW5nL0Rlc2t0b3Av5q+V6K6+L0NvZGVNYXN0ZXIvQ29kZU1hc3Rlci9ub2RlX21vZHVsZXMvdnVlLWhvdC1yZWxvYWQtYXBpL2Rpc3QvaW5kZXguanMiKQogIGFwaS5pbnN0YWxsKHJlcXVpcmUoJ3Z1ZScpKQogIGlmIChhcGkuY29tcGF0aWJsZSkgewogICAgbW9kdWxlLmhvdC5hY2NlcHQoKQogICAgaWYgKCFhcGkuaXNSZWNvcmRlZCgnNmNmMmY3MjgnKSkgewogICAgICBhcGkuY3JlYXRlUmVjb3JkKCc2Y2YyZjcyOCcsIGNvbXBvbmVudC5vcHRpb25zKQogICAgfSBlbHNlIHsKICAgICAgYXBpLnJlbG9hZCgnNmNmMmY3MjgnLCBjb21wb25lbnQub3B0aW9ucykKICAgIH0KICAgIG1vZHVsZS5ob3QuYWNjZXB0KCIuL0dsb2JhbExheW91dC52dWU/dnVlJnR5cGU9dGVtcGxhdGUmaWQ9NmNmMmY3MjgiLCBmdW5jdGlvbiAoKSB7CiAgICAgIGFwaS5yZXJlbmRlcignNmNmMmY3MjgnLCB7CiAgICAgICAgcmVuZGVyOiByZW5kZXIsCiAgICAgICAgc3RhdGljUmVuZGVyRm5zOiBzdGF0aWNSZW5kZXJGbnMKICAgICAgfSkKICAgIH0pCiAgfQp9CmNvbXBvbmVudC5vcHRpb25zLl9fZmlsZSA9ICJzcmMvbGF5b3V0cy9HbG9iYWxMYXlvdXQudnVlIgpleHBvcnQgZGVmYXVsdCBjb21wb25lbnQuZXhwb3J0cw=="}]}
{"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","dependencies":[{"path":"/Users/shuguang/Desktop/毕设/CodeMaster/CodeMaster/src/layouts/GlobalLayout.vue","mtime":1743939532635},{"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:aW1wb3J0IHsgcmVuZGVyLCBzdGF0aWNSZW5kZXJGbnMgfSBmcm9tICIuL0dsb2JhbExheW91dC52dWU/dnVlJnR5cGU9dGVtcGxhdGUmaWQ9NmNmMmY3MjgiCmltcG9ydCBzY3JpcHQgZnJvbSAiLi9HbG9iYWxMYXlvdXQudnVlP3Z1ZSZ0eXBlPXNjcmlwdCZsYW5nPWpzIgpleHBvcnQgKiBmcm9tICIuL0dsb2JhbExheW91dC52dWU/dnVlJnR5cGU9c2NyaXB0Jmxhbmc9anMiCmltcG9ydCBzdHlsZTAgZnJvbSAiLi9HbG9iYWxMYXlvdXQudnVlP3Z1ZSZ0eXBlPXN0eWxlJmluZGV4PTAmaWQ9NmNmMmY3MjgmbGFuZz1sZXNzIgoKCi8qIG5vcm1hbGl6ZSBjb21wb25lbnQgKi8KaW1wb3J0IG5vcm1hbGl6ZXIgZnJvbSAiIS4uLy4uL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9ydW50aW1lL2NvbXBvbmVudE5vcm1hbGl6ZXIuanMiCnZhciBjb21wb25lbnQgPSBub3JtYWxpemVyKAogIHNjcmlwdCwKICByZW5kZXIsCiAgc3RhdGljUmVuZGVyRm5zLAogIGZhbHNlLAogIG51bGwsCiAgbnVsbCwKICBudWxsCiAgCikKCi8qIGhvdCByZWxvYWQgKi8KaWYgKG1vZHVsZS5ob3QpIHsKICB2YXIgYXBpID0gcmVxdWlyZSgiL1VzZXJzL3NodWd1YW5nL0Rlc2t0b3Av5q+V6K6+L0NvZGVNYXN0ZXIvQ29kZU1hc3Rlci9ub2RlX21vZHVsZXMvdnVlLWhvdC1yZWxvYWQtYXBpL2Rpc3QvaW5kZXguanMiKQogIGFwaS5pbnN0YWxsKHJlcXVpcmUoJ3Z1ZScpKQogIGlmIChhcGkuY29tcGF0aWJsZSkgewogICAgbW9kdWxlLmhvdC5hY2NlcHQoKQogICAgaWYgKCFhcGkuaXNSZWNvcmRlZCgnNmNmMmY3MjgnKSkgewogICAgICBhcGkuY3JlYXRlUmVjb3JkKCc2Y2YyZjcyOCcsIGNvbXBvbmVudC5vcHRpb25zKQogICAgfSBlbHNlIHsKICAgICAgYXBpLnJlbG9hZCgnNmNmMmY3MjgnLCBjb21wb25lbnQub3B0aW9ucykKICAgIH0KICAgIG1vZHVsZS5ob3QuYWNjZXB0KCIuL0dsb2JhbExheW91dC52dWU/dnVlJnR5cGU9dGVtcGxhdGUmaWQ9NmNmMmY3MjgiLCBmdW5jdGlvbiAoKSB7CiAgICAgIGFwaS5yZXJlbmRlcignNmNmMmY3MjgnLCB7CiAgICAgICAgcmVuZGVyOiByZW5kZXIsCiAgICAgICAgc3RhdGljUmVuZGVyRm5zOiBzdGF0aWNSZW5kZXJGbnMKICAgICAgfSkKICAgIH0pCiAgfQp9CmNvbXBvbmVudC5vcHRpb25zLl9fZmlsZSA9ICJzcmMvbGF5b3V0cy9HbG9iYWxMYXlvdXQudnVlIgpleHBvcnQgZGVmYXVsdCBjb21wb25lbnQuZXhwb3J0cw=="}]}

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -39,15 +39,15 @@
</template>
<script>
import { mapGetters } from 'vuex';
import { filterRoutes } from '@/router';
import routes from '@/router/routes';
import ProLayout from '@ant-design-vue/pro-layout';
import TabLayout from '@/layouts/TabLayout';
import LoginState from '@/components/common/LoginState.vue';
import { mapGetters } from "vuex";
import { filterRoutes } from "@/router";
import { routes } from "@/router";
import ProLayout from "@ant-design-vue/pro-layout";
import TabLayout from "@/layouts/TabLayout";
import LoginState from "@/components/common/LoginState.vue";
export default {
name: 'GlobalLayout',
name: "GlobalLayout",
components: {
ProLayout,
LoginState,
@ -58,22 +58,23 @@ export default {
collapsed: false,
autoHideHeader: false,
query: {},
layout: 'sidemenu',
contentWidth: 'Fluid',
theme: 'dark',
layout: "sidemenu",
contentWidth: "Fluid",
theme: "dark",
isMobile: false,
};
},
computed: {
...mapGetters(['permissions']),
...mapGetters(["permissions"]),
menus() {
const root = routes.find(v => v.path === '/');
const root = routes.find((v) => v.path === "/");
return filterRoutes(root?.children || [], this.permissions);
},
rightContentClass() {
return [
'ant-pro-global-header-index-right',
this.layout === 'topmenu' && `ant-pro-global-header-index-${this.theme}`,
"ant-pro-global-header-index-right",
this.layout === "topmenu" &&
`ant-pro-global-header-index-${this.theme}`,
];
},
},
@ -83,11 +84,11 @@ export default {
},
handleMediaQuery(query) {
this.query = query;
if (this.isMobile && !query['screen-xs']) {
if (this.isMobile && !query["screen-xs"]) {
this.isMobile = false;
return;
}
if (!this.isMobile && query['screen-xs']) {
if (!this.isMobile && query["screen-xs"]) {
this.isMobile = true;
this.collapsed = false;
}

View File

@ -15,7 +15,7 @@ const RouteView = {
name: 'RouteView',
render: h => h('router-view'), // 渲染路由视图组件
};
const routes = [
export const routes = [
{
path: '/', // 根路由
name: 'Home',
@ -115,9 +115,9 @@ const routes = [
component: () => import('@/components/edit/EditContent.vue'), // 异步加载权限列表组件
},
{
path: '/pages', // 登录页面路由
path: '/community/pages',
name: 'pages',
meta: { title: '内容', auth: [0, 1, 2],hidden:true }, // 路由元信息
meta: { title: '帖子详细', auth: [0, 1, 2] }, // 路由元信息
component: () => import('@/views/communtiy/pages.vue'), // 异步加载登录页面组件
},
{

View File

@ -1,157 +1,157 @@
import GlobalLayout from '@/layouts/GlobalLayout'; // 引入全局布局组件
const RouteView = {
name: 'RouteView',
render: h => h('router-view'), // 渲染路由视图组件
};
const routes = [
{
path: '/', // 根路由
name: 'Home',
meta: { title: '主页' },
redirect: '/race/list', // 重定向至赛事列表页面
component: GlobalLayout, // 使用全局布局组件
children: [
{
path: '/console', // 赛事管理路由
name: 'Console',
redirect: '/console/list', // 默认重定向至赛事列表页面
component: RouteView, // 使用路由视图组件
meta: { title: '首 页', icon: 'appstore' }, // 路由元信息
children: [
{
path: '/console/list', // 赛事列表路由
name: 'ConsoleLog',
component: () => import('@/views/user/Console.vue'), // 异步加载赛事列表组件
// meta: { title: '大数据', auth: [0, 1, 2] }, // 路由元信息,指定需要的权限
meta: { title: '大数据', auth: 0 }, // 路由元信息,指定需要的权限
},
],
},
// import GlobalLayout from '@/layouts/GlobalLayout'; // 引入全局布局组件
// const RouteView = {
// name: 'RouteView',
// render: h => h('router-view'), // 渲染路由视图组件
// };
// const routes = [
// {
// path: '/', // 根路由
// name: 'Home',
// meta: { title: '主页' },
// redirect: '/race/list', // 重定向至赛事列表页面
// component: GlobalLayout, // 使用全局布局组件
// children: [
// {
// path: '/console', // 赛事管理路由
// name: 'Console',
// redirect: '/console/list', // 默认重定向至赛事列表页面
// component: RouteView, // 使用路由视图组件
// meta: { title: '首 页', icon: 'appstore' }, // 路由元信息
// children: [
// {
// path: '/console/list', // 赛事列表路由
// name: 'ConsoleLog',
// component: () => import('@/views/user/Console.vue'), // 异步加载赛事列表组件
// // meta: { title: '大数据', auth: [0, 1, 2] }, // 路由元信息,指定需要的权限
// meta: { title: '大数据', auth: 0 }, // 路由元信息,指定需要的权限
// },
// ],
// },
{
path: '/race', // 赛事管理路由
name: 'Race',
redirect: '/race/list', // 默认重定向至赛事列表页面
component: RouteView, // 使用路由视图组件
meta: { title: '赛事管理', icon: 'appstore' }, // 路由元信息
children: [
{
path: '/race/list', // 赛事列表路由
name: 'RaceList',
component: () => import('@/views/race/Race'), // 异步加载赛事列表组件
meta: { title: '赛事列表', auth: [0, 1, 2] }, // 路由元信息,指定需要的权限
},
{
path: '/race/record', // 参赛记录路由
name: 'Record',
component: () => import('@/views/race/Record'), // 异步加载参赛记录组件
meta: { title: '参赛记录', auth: [0, 1, 2] }, // 路由元信息,指定需要的权限
},
{
path: '/race/down', // 参赛记录路由
name: 'Down',
component: () => import('@/views/race/Down'), // 异步加载参赛记录组件
meta: { title: '参赛资料', auth: [0, 1, 2] }, // 路由元信息,指定需要的权限
},
],
},
{
path: '/user', // 用户管理路由
redirect: '/user/student', // 默认重定向至学生列表页面
name: 'User',
component: RouteView, // 使用路由视图组件
meta: { title: '用户管理', icon: 'user', auth: [0, 1] }, // 路由元信息,指定需要的权限
children: [
{
path: '/user/student', // 学生列表路由
name: 'Student',
component: () => import('@/views/user/Student'), // 异步加载学生列表组件
meta: { title: '学生列表', auth: [0, 1] }, // 路由元信息
},
{
path: '/user/teacher', // 教师列表路由
name: 'Teacher',
component: () => import('@/views/user/Teacher'), // 异步加载教师列表组件
meta: { title: '教师列表', auth: [0] }, // 路由元信息
},
],
},
// {
// path: '/race', // 赛事管理路由
// name: 'Race',
// redirect: '/race/list', // 默认重定向至赛事列表页面
// component: RouteView, // 使用路由视图组件
// meta: { title: '赛事管理', icon: 'appstore' }, // 路由元信息
// children: [
// {
// path: '/race/list', // 赛事列表路由
// name: 'RaceList',
// component: () => import('@/views/race/Race'), // 异步加载赛事列表组件
// meta: { title: '赛事列表', auth: [0, 1, 2] }, // 路由元信息,指定需要的权限
// },
// {
// path: '/race/record', // 参赛记录路由
// name: 'Record',
// component: () => import('@/views/race/Record'), // 异步加载参赛记录组件
// meta: { title: '参赛记录', auth: [0, 1, 2] }, // 路由元信息,指定需要的权限
// },
// {
// path: '/race/down', // 参赛记录路由
// name: 'Down',
// component: () => import('@/views/race/Down'), // 异步加载参赛记录组件
// meta: { title: '参赛资料', auth: [0, 1, 2] }, // 路由元信息,指定需要的权限
// },
// ],
// },
// {
// path: '/user', // 用户管理路由
// redirect: '/user/student', // 默认重定向至学生列表页面
// name: 'User',
// component: RouteView, // 使用路由视图组件
// meta: { title: '用户管理', icon: 'user', auth: [0, 1] }, // 路由元信息,指定需要的权限
// children: [
// {
// path: '/user/student', // 学生列表路由
// name: 'Student',
// component: () => import('@/views/user/Student'), // 异步加载学生列表组件
// meta: { title: '学生列表', auth: [0, 1] }, // 路由元信息
// },
// {
// path: '/user/teacher', // 教师列表路由
// name: 'Teacher',
// component: () => import('@/views/user/Teacher'), // 异步加载教师列表组件
// meta: { title: '教师列表', auth: [0] }, // 路由元信息
// },
// ],
// },
{
path: '/community', // 权限管理路由
redirect: '/community/list', // 默认重定向至角色列表页面
name: 'Role',
component: RouteView, // 使用路由视图组件
meta: { title: '交流社区', icon: 'key' }, // 路由元信息
children: [
{
path: '/community/Article', // 权限列表路由
name: 'Article',
meta: { title: '论坛首页', auth: [0, 1, 2] }, // 路由元信息,指定需要的权限
component: () => import('@/views/communtiy/Article.vue'), // 异步加载权限列表组件
},
{
path: '/community/publish', // 权限列表路由
name: 'publish',
meta: { title: '在线发帖', auth: [0, 1, 2] }, // 路由元信息,指定需要的权限
component: () => import('@/components/edit/tinymce.vue'), // 异步加载权限列表组件
},
{
path: '/community/editcontent', // 权限列表路由
name: 'editcontent',
meta: { title: '修改帖子', auth: [0, 1, 2] ,hidden:true}, // 路由元信息,指定需要的权限
component: () => import('@/components/edit/EditContent.vue'), // 异步加载权限列表组件
},
{
path: '/pages', // 登录页面路由
name: 'pages',
meta: { title: '内容', auth: [0, 1, 2],hidden:true }, // 路由元信息
component: () => import('@/views/communtiy/pages.vue'), // 异步加载登录页面组件
},
{
path: '/account/center', // 角色列表路由
name: 'AccountCenter',
meta: { title: '个人中心', auth: [0, 1, 2] }, // 路由元信息,指定需要的权限
component: () => import('@/views/account/center/index.vue'), // 异步加载角色列表组件
},
],
},
{
path: '/account', // 权限管理路由
name: 'Account',
component: RouteView, // 使用路由视图组件
meta: { title: '竞赛助手', icon: 'key' }, // 路由元信息
children: [
{
path: '/account/Ai', // 角色列表路由
name: 'AccountSettings',
meta: { title: '竞赛助手', auth: 0 }, // 路由元信息,指定需要的权限
component: () => import('@/views/user/Ai.vue'), // 异步加载角色列表组件
// {
// path: '/community', // 权限管理路由
// redirect: '/community/list', // 默认重定向至角色列表页面
// name: 'Role',
// component: RouteView, // 使用路由视图组件
// meta: { title: '交流社区', icon: 'key' }, // 路由元信息
// children: [
// {
// path: '/community/Article', // 权限列表路由
// name: 'Article',
// meta: { title: '论坛首页', auth: [0, 1, 2] }, // 路由元信息,指定需要的权限
// component: () => import('@/views/communtiy/Article.vue'), // 异步加载权限列表组件
// },
// {
// path: '/community/publish', // 权限列表路由
// name: 'publish',
// meta: { title: '在线发帖', auth: [0, 1, 2] }, // 路由元信息,指定需要的权限
// component: () => import('@/components/edit/tinymce.vue'), // 异步加载权限列表组件
// },
// {
// path: '/community/editcontent', // 权限列表路由
// name: 'editcontent',
// meta: { title: '修改帖子', auth: [0, 1, 2] ,hidden:true}, // 路由元信息,指定需要的权限
// component: () => import('@/components/edit/EditContent.vue'), // 异步加载权限列表组件
// },
// {
// path: '/pages', // 登录页面路由
// name: 'pages',
// meta: { title: '内容', auth: [0, 1, 2],hidden:true }, // 路由元信息
// component: () => import('@/views/communtiy/pages.vue'), // 异步加载登录页面组件
// },
// {
// path: '/account/center', // 角色列表路由
// name: 'AccountCenter',
// meta: { title: '个人中心', auth: [0, 1, 2] }, // 路由元信息,指定需要的权限
// component: () => import('@/views/account/center/index.vue'), // 异步加载角色列表组件
// },
// ],
// },
// {
// path: '/account', // 权限管理路由
// name: 'Account',
// component: RouteView, // 使用路由视图组件
// meta: { title: '竞赛助手', icon: 'key' }, // 路由元信息
// children: [
// {
// path: '/account/Ai', // 角色列表路由
// name: 'AccountSettings',
// meta: { title: '竞赛助手', auth: 0 }, // 路由元信息,指定需要的权限
// component: () => import('@/views/user/Ai.vue'), // 异步加载角色列表组件
},
],
},
],
},
{
path: '/login', // 登录页面路由
name: 'Login',
meta: { title: '登陆' }, // 路由元信息
component: () => import('@/views/Login'), // 异步加载登录页面组件
},
{
path: '/index', // 登录页面路由
name: 'Index',
meta: { title: '主页' }, // 路由元信息
component: () => import('@/views/Index'), // 异步加载登录页面组件
},
{
path: '/404', // 404 页面路由
component: () => import('@/components/common/404'), // 异步加载 404 组件
},
{
path: '*', // 匹配任何不存在的路由
redirect: '/404', // 重定向至 404 页面
},
];
export default routes;
// },
// ],
// },
// ],
// },
// {
// path: '/login', // 登录页面路由
// name: 'Login',
// meta: { title: '登陆' }, // 路由元信息
// component: () => import('@/views/Login'), // 异步加载登录页面组件
// },
// {
// path: '/index', // 登录页面路由
// name: 'Index',
// meta: { title: '主页' }, // 路由元信息
// component: () => import('@/views/Index'), // 异步加载登录页面组件
// },
// {
// path: '/404', // 404 页面路由
// component: () => import('@/components/common/404'), // 异步加载 404 组件
// },
// {
// path: '*', // 匹配任何不存在的路由
// redirect: '/404', // 重定向至 404 页面
// },
// ];
// export default routes;

File diff suppressed because it is too large Load Diff

View File

@ -1,7 +1,7 @@
<template>
<!-- 主容器 -->
<div>
<!-- 搜索表单 -->
<!-- 搜索表单 -->
<SearchForm
ref="searchForm"
:loading="loading"
@ -10,71 +10,93 @@
@reset="search"
/>
<!-- 标签选择器 -->
<a-card :bordered="false" class="ant-pro-components-tag-select" style="margin-bottom:-82px">
<a-card
:bordered="false"
class="ant-pro-components-tag-select"
style="margin-bottom: -82px"
>
<a-form :form="form" layout="inline">
<!-- 类目选择 -->
<standard-form-row title="所属类目" block style="padding-bottom: 11px;">
<standard-form-row title="所属类目" block style="padding-bottom: 11px">
<a-form-item>
<!-- 标签选择器组件 -->
<tag-select>
<!-- 类目选项 -->
<!-- 全部选项 -->
<tag-select-option value="全部" @click.native="getList"><h3><a-icon type="audit" />全部</h3></tag-select-option>
<tag-select-option value="公告" @click.native="search('公告')"><h3><a-icon type="audit" />公告</h3></tag-select-option>
<tag-select-option value="交流" @click.native="search('交流')"><h3><a-icon type="audit" />交流</h3></tag-select-option>
<tag-select-option value="讨论" @click.native="search('讨论')"><h3><a-icon type="audit" />讨论</h3></tag-select-option>
</tag-select>
<tag-select>
<!-- 类目选项 -->
<!-- 全部选项 -->
<tag-select-option value="全部" @click.native="getList"
><h3><a-icon type="audit" />全部</h3></tag-select-option
>
<tag-select-option value="公告" @click.native="search('公告')"
><h3><a-icon type="audit" />公告</h3></tag-select-option
>
<tag-select-option value="交流" @click.native="search('交流')"
><h3><a-icon type="audit" />交流</h3></tag-select-option
>
<tag-select-option value="讨论" @click.native="search('讨论')"
><h3><a-icon type="audit" />讨论</h3></tag-select-option
>
</tag-select>
</a-form-item>
</standard-form-row>
</a-form>
</a-card>
<!-- 文章列表 -->
<a-card style="margin-top: 24px;" :bordered="false">
<a-card style="margin-top: 24px" :bordered="false">
<a-list
size="large"
rowKey="id"
:loading="loading"
itemLayout="vertical"
:dataSource="data"
:pagination="pagination"
@change="changePage"
:pagination="pagination"
@change="changePage"
>
<div class="side-brick">
<ul class="brick-box">
<li class="brick-list" v-for="item in data">
<router-link :to="'/pages?id=' + item.articleId">
<a class="item-box-retina">
<figure class="item-box-img">
<!-- 文章图片 -->
<!-- 调用extractImageUrl方法并传递文章内容 -->
<img class="lazy" :src="extractImageUrl(item.articleContent)" alt="Article Cover">
<!-- <img class="lazy" :src="item.articleContent.match(imageUrlRegex)" > -->
<!-- 文章标题 -->
<h3>{{item.articleTitle}}</h3>
</figure>
<!-- 文章内容 -->
<p class="item-user-info" v-html="item.articleContent"></p>
<p class="item-user-author">
<img src="/logo.png" :alt="userData[item.userId]">
<!-- 文章作者 -->
<span class="comment-username">{{userData[item.userId]}}<span class="autlv aut-5 vs-level">V</span></span>
<span class="comment-tip"><i class="icon font-time"></i>{{item.publishTime | formatTime}}</span>
</p>
</a>
</router-link>
</li>
</ul>
</div>
<div class="side-brick">
<ul class="brick-box">
<li class="brick-list" v-for="item in data" key="item.id">
<router-link :to="'/community/pages?id=' + item.articleId">
<a class="item-box-retina">
<figure class="item-box-img">
<!-- 文章图片 -->
<!-- 调用extractImageUrl方法并传递文章内容 -->
<img
class="lazy"
:src="extractImageUrl(item.articleContent)"
alt="Article Cover"
/>
<!-- <img class="lazy" :src="item.articleContent.match(imageUrlRegex)" > -->
<!-- 文章标题 -->
<h3>{{ item.articleTitle }}</h3>
</figure>
<!-- 文章内容 -->
<p class="item-user-info" v-html="item.articleContent"></p>
<p class="item-user-author">
<img src="/logo.png" :alt="userData[item.userId]" />
<!-- 文章作者 -->
<span class="comment-username"
>{{ userData[item.userId]
}}<span class="autlv aut-5 vs-level">V</span></span
>
<span class="comment-tip"
><i class="icon font-time"></i
>{{ item.publishTime | formatTime }}</span
>
</p>
</a>
</router-link>
</li>
</ul>
</div>
</a-list>
</a-card>
</div>
</template>
<script>
import TagSelect from '../../components/TagSelect';
import StandardFormRow from '../../components/StandardFormRow';
import ArticleListContent from '../../components/ArticleListContent';
import IconText from './components/IconText';
import TagSelect from "../../components/TagSelect";
import StandardFormRow from "../../components/StandardFormRow";
import ArticleListContent from "../../components/ArticleListContent";
import IconText from "./components/IconText";
const TagSelectOption = TagSelect.Option;
export default {
components: {
@ -86,95 +108,101 @@ export default {
},
data() {
return {
userData:[],
imageUrlRegex:/(http[s]?:\/\/[^(\s|")]+\.(png|jpg|jpeg|gif|webp))/gi,
current: 1,
pageSize: 8,
userData: [],
imageUrlRegex: /(http[s]?:\/\/[^(\s|")]+\.(png|jpg|jpeg|gif|webp))/gi,
current: 1,
pageSize: 8,
loading: true,
loadingMore: false,
data: [],
originalUsers: [],
total: 0,
originalUsers: [],
total: 0,
form: this.$form.createForm(this),
};
},
mounted() {
this.getUser()
this.$watch(() => [this.pageSize, this.current], this.getList, { immediate: true });
},filters: {
formatTime: function(value) {
//
const parsedTime = new Date(value);
const year = parsedTime.getFullYear();
const month = String(parsedTime.getMonth() + 1).padStart(2, '0');
const day = String(parsedTime.getDate()).padStart(2, '0');
return `${year}-${month}-${day}`;
}
},
computed:{
searchOptions() {
this.getUser();
this.$watch(() => [this.pageSize, this.current], this.getList, {
immediate: true,
});
},
filters: {
formatTime: function (value) {
//
const parsedTime = new Date(value);
const year = parsedTime.getFullYear();
const month = String(parsedTime.getMonth() + 1).padStart(2, "0");
const day = String(parsedTime.getDate()).padStart(2, "0");
return `${year}-${month}-${day}`;
},
},
computed: {
searchOptions() {
return createSearchOptions.call(this);
},
pagination() {
pagination() {
return {
current: this.current,
pageSize: this.pageSize,
total: this.total,
showSizeChanger: true,
pageSizeOptions: ['8', '9', '10', '20'],
pageSizeOptions: ["8", "9", "10", "20"],
showQuickJumper: true,
showTotal: total => `Total ${total} items`,
showTotal: (total) => `Total ${total} items`,
onChange: this.changePage,
onShowSizeChange: this.changePage
onShowSizeChange: this.changePage,
};
},
},
methods: { extractImageUrl(content) {
},
methods: {
extractImageUrl(content) {
// URL
const imageUrlRegex = /(http[s]?:\/\/[^(\s|")]+\.(png|jpg|jpeg|gif|webp))/gi;
const imageUrlRegex =
/(http[s]?:\/\/[^(\s|")]+\.(png|jpg|jpeg|gif|webp))/gi;
// 使URL
const matches = content.match(imageUrlRegex);
// URL
if (matches && matches.length > 0) {
return matches[0];
}
//
const randomSeed = Math.floor(Math.random() * 10000); // 09999
//
const randomSeed = Math.floor(Math.random() * 10000); // 09999
// 使
return 'https://api.7585.net.cn/bing/api.php?rand=1?'+randomSeed;
return "https://tu.ltyuanfang.cn/api/fengjing.php?" + randomSeed;
},
async getImage(articleId) {
try {
const res = await this.$api.AllArticle();
let content = res.data.filter(item => item.articleId === articleId);
async getImage(articleId) {
try {
const res = await this.$api.AllArticle();
let content = res.data.filter((item) => item.articleId === articleId);
if (content.length === 0) {
console.log("未找到对应文章内容");
return null; //
}
if (content.length === 0) {
console.log("未找到对应文章内容");
return null; //
}
const imageUrlRegex = /(http[s]?:\/\/[^(\s|")]+\.(png|jpg|jpeg|gif|webp))/gi;
const images = content[0].articleContent.match(imageUrlRegex);
const imageUrlRegex =
/(http[s]?:\/\/[^(\s|")]+\.(png|jpg|jpeg|gif|webp))/gi;
const images = content[0].articleContent.match(imageUrlRegex);
if (images && images.length > 0) {
console.log("找到封面图片链接:", images[0]);
return images[0]; //
} else {
console.log("未找到图片链接");
return null; //
}
} catch (error) {
console.error("获取文章内容失败:", error);
return null; //
}
},
//
if (images && images.length > 0) {
console.log("找到封面图片链接:", images[0]);
return images[0]; //
} else {
console.log("未找到图片链接");
return null; //
}
} catch (error) {
console.error("获取文章内容失败:", error);
return null; //
}
},
//
search() {
this.current = 1;
this.getList();
},
//
changePage(current, pageSize) {
//
changePage(current, pageSize) {
this.current = current;
this.pageSize = pageSize;
this.getList();
@ -182,209 +210,484 @@ computed:{
handleChange(value) {
console.log(`selected ${value}`);
},
getUser() {
this.$api.AllUser().then(res => {
const users = res.data;
const userMap = {};
users.forEach(user => {
userMap[user.userId] = user.userName;
});
this.userData = userMap;
console.log(this.userData)
}).catch(error => {
console.error(error);
});
},
getUser() {
this.$api
.AllUser()
.then((res) => {
const users = res.data;
const userMap = {};
users.forEach((user) => {
userMap[user.userId] = user.userName;
});
this.userData = userMap;
console.log(this.userData);
})
.catch((error) => {
console.error(error);
});
},
async getList() {
try {
//
this.loading = true;
this.query = this.$refs.searchForm.getResult();
// 使 await
const res = await this.$api.AllArticle();
//
this.originalUsers = res.data
this.filterUsers(); //
console.log('res', res.data);
// 使
this.total = res.data.length;
} catch (error) {
//
console.error("获取文章列表失败:", error);
} finally {
//
this.loading = false;
}
},
//
filterUsers() {
let filteredUsers = this.originalUsers.slice(); //
console.log(this.query)
if (this.query.articleTitle) {
filteredUsers = filteredUsers.filter(user => user.articleTitle.includes(this.query.articleTitle));
}
try {
//
this.loading = true;
this.query = this.$refs.searchForm.getResult();
// 使 await
const res = await this.$api.AllArticle();
//
this.originalUsers = res.data;
this.filterUsers(); //
console.log("res", res.data);
// 使
this.total = res.data.length;
} catch (error) {
//
console.error("获取文章列表失败:", error);
} finally {
//
this.loading = false;
}
},
//
filterUsers() {
let filteredUsers = this.originalUsers.slice(); //
console.log(this.query);
if (this.query.articleTitle) {
filteredUsers = filteredUsers.filter((user) =>
user.articleTitle.includes(this.query.articleTitle)
);
}
if (this.query.userName) {
filteredUsers = filteredUsers.filter(user => user.userId.includes(this.query.userName));
}
if (this.query.articleContent) {
filteredUsers = filteredUsers.filter(user => user.articleContent.includes(this.query.articleContent));
}
const start = (this.current - 1) * this.pageSize;
const end = start + this.pageSize;
this.data = filteredUsers.slice(start, end);
},
if (this.query.userName) {
filteredUsers = filteredUsers.filter((user) =>
user.userId.includes(this.query.userName)
);
}
if (this.query.articleContent) {
filteredUsers = filteredUsers.filter((user) =>
user.articleContent.includes(this.query.articleContent)
);
}
const start = (this.current - 1) * this.pageSize;
const end = start + this.pageSize;
this.data = filteredUsers.slice(start, end);
},
},
};
//
function createSearchOptions() {
return [
{
label: '标题',
key: 'articleTitle',
default: '',
component: 'input',
label: "标题",
key: "articleTitle",
default: "",
component: "input",
},
{
label: '作者',
key: 'userName',
default: '',
component: 'input',
},
{
label: '内容',
key: 'articleContent',
default: '',
component: 'input',
label: "作者",
key: "userName",
default: "",
component: "input",
},
{
label: '时间',
key: 'publishTime',
label: "内容",
key: "articleContent",
default: "",
component: "input",
},
{
label: "时间",
key: "publishTime",
default: () => [],
mapper: ({ publishTime }) => publishTime.join('~'),
component: 'range-picker',
mapper: ({ publishTime }) => publishTime.join("~"),
component: "range-picker",
},
];
}
</script>
<style lang="less" scoped>
/* 全局样式优化 */
body {
color: #333;
font-family: "PingFang SC", "Microsoft YaHei", sans-serif;
font-size: 14px;
line-height: 1.5;
background-color: #f6f8fa;
background-image: linear-gradient(
to bottom,
rgba(240, 244, 248, 0.8),
rgba(255, 255, 255, 0.8)
);
}
/* 主容器样式 */
.ant-card {
border-radius: 12px;
box-shadow: 0 4px 16px rgba(0, 0, 0, 0.08);
transition: all 0.3s ease;
overflow: hidden;
border: none;
}
.ant-card:hover {
box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12);
transform: translateY(-2px);
}
/* 搜索表单美化 */
.ant-form .ant-form-item {
margin-bottom: 16px;
}
.ant-input {
border-radius: 8px;
padding: 10px 16px;
transition: all 0.3s;
}
.ant-input:hover,
.ant-input:focus {
border-color: #3690cf;
box-shadow: 0 0 0 2px rgba(54, 144, 207, 0.2);
}
.ant-btn {
border-radius: 8px;
padding: 8px 20px;
height: auto;
font-weight: 500;
transition: all 0.3s;
}
.ant-btn-primary {
background: linear-gradient(135deg, #3690cf, #2a78b8);
border: none;
}
.ant-btn-primary:hover {
background: linear-gradient(135deg, #2a78b8, #1e5c8e);
transform: translateY(-1px);
}
/* 标签选择器美化 */
.ant-pro-components-tag-select {
:deep(.ant-pro-tag-select .ant-tag) {
margin-right: 24px;
padding: 0 8px;
font-size: 14px;
margin-bottom: 0 !important;
padding: 16px;
border-radius: 12px;
}
.tag-select {
display: flex;
flex-wrap: wrap;
gap: 12px;
}
.ant-tag {
border-radius: 20px;
padding: 6px 16px !important;
margin-right: 16px !important;
font-size: 14px !important;
cursor: pointer;
transition: all 0.3s;
background-color: #f0f2f5;
border: none;
}
.ant-tag:hover {
background-color: #e6f7ff;
color: #3690cf;
}
.ant-tag-checkable-checked {
background: linear-gradient(135deg, #3690cf, #2a78b8) !important;
color: white !important;
font-weight: 500;
}
.ant-tag-checkable-checked:hover {
color: white !important;
opacity: 0.9;
}
.ant-tag .anticon {
margin-right: 4px;
}
/* 文章卡片列表样式 */
.side-brick {
background: white;
border: none;
border-radius: 12px;
padding: 20px;
box-shadow: none;
}
.brick-box {
display: flex;
flex-wrap: wrap;
margin-right: -20px;
margin-top: 10px;
}
li.brick-list {
width: 23%;
margin-right: 2%;
margin-bottom: 30px;
border-radius: 12px;
overflow: hidden;
transition: all 0.4s cubic-bezier(0.25, 0.8, 0.25, 1);
background-color: white;
box-shadow: 0 4px 10px rgba(0, 0, 0, 0.05);
}
li.brick-list:hover {
transform: translateY(-6px);
box-shadow: 0 12px 20px rgba(0, 0, 0, 0.1);
}
/* 文章图片容器 */
figure.item-box-img {
height: 190px;
position: relative;
overflow: hidden;
border-radius: 12px 12px 0 0;
}
figure.item-box-img img {
width: 100%;
height: 100%;
object-fit: cover;
transition: transform 0.6s;
}
li.brick-list:hover figure.item-box-img img {
transform: scale(1.08);
}
/* 文章标题样式 */
figure.item-box-img h3 {
position: absolute;
bottom: 0;
left: 0;
width: 100%;
padding: 15px;
margin: 0;
background: linear-gradient(to top, rgba(0, 0, 0, 0.7), transparent);
color: white;
font-size: 16px;
font-weight: 500;
line-height: 1.4;
z-index: 1;
}
/* 文章内容样式 */
p.item-user-info {
padding: 0 15px;
margin-top: 15px;
height: 44px;
line-height: 1.6;
font-size: 13px;
color: #666;
overflow: hidden;
text-overflow: ellipsis;
display: -webkit-box;
-webkit-line-clamp: 2;
-webkit-box-orient: vertical;
}
/* 文章作者信息 */
p.item-user-author {
padding: 0 15px 15px;
margin-top: 10px;
display: flex;
align-items: center;
font-size: 12px;
color: #999;
border-top: 1px solid rgba(0, 0, 0, 0.05);
padding-top: 12px;
}
p.item-user-author img {
width: 24px;
height: 24px;
border-radius: 50%;
margin-right: 8px;
border: 2px solid #fff;
box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.1);
}
.comment-username {
font-weight: 500;
color: #555;
margin-right: 8px;
}
.autlv {
display: inline-block;
width: 16px;
height: 16px;
line-height: 16px;
text-align: center;
font-size: 10px;
color: white;
background-color: #ff9800;
border-radius: 3px;
margin-left: 4px;
vertical-align: text-top;
}
.comment-tip {
margin-left: auto;
color: #aaa;
}
.comment-tip i {
margin-right: 4px;
}
/* 分页样式 */
.ant-pagination {
margin-top: 20px;
text-align: center;
}
.ant-pagination-item {
border-radius: 8px;
transition: all 0.3s;
}
.ant-pagination-item:hover {
border-color: #3690cf;
}
.ant-pagination-item-active {
background-color: #3690cf;
border-color: #3690cf;
}
.ant-pagination-item-active a {
color: white;
}
/* 响应式调整 */
@media (max-width: 1200px) {
li.brick-list {
width: 31.333%;
margin-right: 2%;
}
}
.ant-pro-components-tag-select .ant-tag-checkable-checked {
color: black; /* 设置为你喜欢的颜色 */
}
.list-articles-trigger {
margin-left: 12px;
}
.box-show, .post-list {
position: relative;
background: rgba(192, 111, 111, 0.95);
border: 1px solid rgba(221, 221, 221, 0.28);
padding: 0 20px;
border-radius: 18px;
margin-bottom: 20px;
-webkit-box-shadow: 0px 0px 10px -2px rgba(158,158,158,0.2);
box-shadow: 0px 0px 10px -2px rgba(158,158,158,0.2);
}article, input, textarea, b, ul, li, i, button, a, .swiper-button-next, .swiper-button-prev {
-moz-transition: ease-in-out 0.3s;
-webkit-transition: ease-in-out 0.3s;
-o-transition: ease-in-out 0.3s;
-ms-transition: ease-in-out 0.3s;
transition: ease-in-out 0.3s;
}article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section, summary {
display: block;
}html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video {
margin: 0;
padding: 0;
outline: 0;
border: 0;
background: transparent;
vertical-align: baseline;
font-size: 100%;
}article {
display: block;
unicode-bidi: isolate;
}body {
color: #666;
font-family: "Microsoft Yahei", Helvetica, Arial, sans-serif;
font-size: 14px;
line-height: 1.42857143;
background-color: #f5f5f5;
background-repeat: no-repeat;
background-attachment: fixed;
background-position: top center;
}
.side-title-wrap {
margin-top: 15px;
padding-bottom: 15px;
display: block;
white-space: nowrap;
text-overflow: ellipsis;
overflow: hidden;
position: relative;
border-bottom: 1px solid #ddd;
}.side-title-wrap h3.widget-title {
font-size: 16px;
color: #333;
margin-right: 16px;
display: inline-block;
vertical-align: bottom;
padding-left: 10px;
margin-left: 0px;
border-left: 4px solid #3690cf;
font-weight: 400;
}.side-title-wrap span, .side-title-wrap span.suburl a {
font-size: 12px;
color: #999;
}.brick-box {
margin-right: -2%;
margin-top: 20px;
overflow: hidden;
}li.brick-list {
float: left;
position: relative;
width: 23%;
@media (max-width: 768px) {
li.brick-list {
width: 48%;
margin-right: 2%;
margin-bottom: 15px;
border-radius: 4px;
overflow: hidden;
transition: all .3s ease;
}figure.item-box-img {
height: 190px;
position: relative;
overflow: hidden;
}p.item-user-info {
height: 44px;
margin-top: 10px;
line-height: 1.6;
display: -webkit-box;
-webkit-box-orient: vertical;
-webkit-line-clamp: 2;
overflow: hidden;
white-space: normal;
}p.item-user-author {
overflow: hidden;
line-height: 32px;
margin-top: 10px;
padding-top: 10px;
position: relative;
}
figure.item-box-img {
height: 160px;
}
}
.side-brick {
margin-top: 20px;
overflow: hidden;
background: rgba(255, 255, 255, 0.68);
border: 1px solid rgba(221, 221, 221, 0.28);
padding: 0 20px;
border-radius: 18px;
margin-bottom: 20px;
-webkit-box-shadow: 0px 0px 10px -2px rgba(158,158,158,0.2);
box-shadow: 0px 0px 10px -2px rgba(158,158,158,0.2);
@media (max-width: 480px) {
li.brick-list {
width: 100%;
margin-right: 0;
}
figure.item-box-img {
height: 180px;
}
}
/* 优化卡片布局 */
.item-box-retina {
display: block;
height: 100%;
display: flex;
flex-direction: column;
border-radius: 12px;
overflow: hidden;
text-decoration: none !important;
}
/* 额外美化细节 */
.side-title-wrap h3.widget-title {
font-size: 18px;
font-weight: 600;
border-left: 4px solid #3690cf;
padding-left: 12px;
margin-bottom: 20px;
}
/* 添加按钮悬停效果 */
.ant-btn-primary {
position: relative;
overflow: hidden;
}
.ant-btn-primary:after {
content: "";
position: absolute;
top: 50%;
left: 50%;
width: 10px;
height: 10px;
background: rgba(255, 255, 255, 0.3);
opacity: 0;
border-radius: 100%;
transform: scale(1, 1) translate(-50%);
transform-origin: 50% 50%;
}
.ant-btn-primary:hover:after {
animation: ripple 1s ease-out;
}
@keyframes ripple {
0% {
transform: scale(0, 0);
opacity: 0.5;
}
20% {
transform: scale(25, 25);
opacity: 0.3;
}
100% {
opacity: 0;
transform: scale(40, 40);
}
}
/* 优化搜索表单 */
.search-form {
background: white;
border-radius: 12px;
padding: 24px;
margin-bottom: 24px;
}
.search-form .ant-form-item-label > label {
font-weight: 500;
color: #333;
}
/* 自定义滚动条 */
::-webkit-scrollbar {
width: 8px;
height: 8px;
}
::-webkit-scrollbar-track {
background: #f1f1f1;
border-radius: 10px;
}
::-webkit-scrollbar-thumb {
background: #c1c1c1;
border-radius: 10px;
}
::-webkit-scrollbar-thumb:hover {
background: #3690cf;
}
</style>