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

1 line
5.0 KiB
JSON

{"remainingRequest":"/Users/shuguang/Desktop/毕设/CodeMaster/CodeMaster/node_modules/vue-loader/lib/index.js??vue-loader-options!/Users/shuguang/Desktop/毕设/CodeMaster/CodeMaster/src/components/common/LoginState.vue?vue&type=style&index=0&id=d37408e8&scoped=true&lang=stylus","dependencies":[{"path":"/Users/shuguang/Desktop/毕设/CodeMaster/CodeMaster/src/components/common/LoginState.vue","mtime":1742646402766},{"path":"/Users/shuguang/Desktop/毕设/CodeMaster/CodeMaster/node_modules/css-loader/dist/cjs.js","mtime":1743264596127},{"path":"/Users/shuguang/Desktop/毕设/CodeMaster/CodeMaster/node_modules/vue-loader/lib/loaders/stylePostLoader.js","mtime":1743264597030},{"path":"/Users/shuguang/Desktop/毕设/CodeMaster/CodeMaster/node_modules/postcss-loader/src/index.js","mtime":1743264596321},{"path":"/Users/shuguang/Desktop/毕设/CodeMaster/CodeMaster/node_modules/stylus-loader/index.js","mtime":1743264596421},{"path":"/Users/shuguang/Desktop/毕设/CodeMaster/CodeMaster/node_modules/style-resources-loader/lib/index.js","mtime":1743264596701},{"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:Ci5oZWFkZXItYXZhdGFyCiAgZGlzcGxheSBpbmxpbmUtZmxleAogIGFsaWduLWl0ZW1zIGNlbnRlcgogIGN1cnNvciBwb2ludGVyCiAgcGFkZGluZyAwIDEwcHgKICAuYXZhdGFyCiAgICBwb3NpdGlvbiByZWxhdGl2ZQogICAgdG9wIC0xcHgKICAgIG1hcmdpbi1yaWdodCA4cHgKICAubmFtZQogICAgZm9udC13ZWlnaHQgNTAwCg=="},{"version":3,"sources":["LoginState.vue"],"names":[],"mappings":";AAqGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA","file":"LoginState.vue","sourceRoot":"src/components/common","sourcesContent":["<template>\n <a-dropdown>\n <a-spin v-if=\"!user.name\" size=\"small\" />\n <div v-else class=\"header-avatar\">\n <a-icon class=\"avatar\" type=\"user\" />\n <span class=\"name\">{{ user.name }}</span>\n </div>\n <a-menu slot=\"overlay\">\n <a-menu-item disabled>\n <a-icon type=\"smile\" />\n {{ user.role && user.role.label }}\n </a-menu-item>\n <a-menu-item @click=\"modifySelfInfo\">\n <a-icon type=\"user\" />\n <span>个人信息</span>\n </a-menu-item>\n <a-menu-item @click=\"modifyPassword\">\n <a-icon type=\"lock\" />\n <span>修改密码</span>\n </a-menu-item>\n <a-menu-divider />\n <a-menu-item @click=\"logout\">\n <a-icon type=\"poweroff\" />\n <span>退出登录</span>\n </a-menu-item>\n </a-menu>\n </a-dropdown>\n</template>\n\n<script>\nimport UpdatePassword from '@/components/common/UpdatePassword';\nimport EditStudent from '@/components/edit/EditStudent';\nimport EditTeacher from '@/components/edit/EditTeacher';\nimport { mapState, mapActions } from 'vuex';\n\nexport default {\n name: 'LoginState',\n computed: {\n ...mapState(['user']),\n },\n methods: {\n ...mapActions(['initUser']),\n logout() {\n this.$store.commit('logout');\n this.$router.replace('/login');\n },\n modifyPassword() {\n let vnode;\n this.$drawer({\n title: '修改密码',\n content: h => (vnode = <UpdatePassword />),\n onOk: async () => {\n const values = await vnode.componentInstance.validate();\n return this.$api.updatePassword({\n account: this.user.account,\n identity: this.user.identity,\n oldVal: values.oldVal,\n newVal: values.newVal,\n }).then(() => {\n this.$message.success('修改成功');\n }).catch(e => {\n console.error(e);\n this.$message.error(e.msg || '修改失败');\n throw e;\n });\n },\n });\n },\n modifySelfInfo() {\n let vnode;\n this.$drawer({\n title: '修改个人信息',\n content: h => (vnode = this.$store.state.user.userPrivileges == 2\n ? <EditStudent type=\"update\" data={this.user} />\n : <EditTeacher type=\"update\" data={this.user} />),\n onOk: async () => {\n const values = await vnode.componentInstance.validate();\n\t\t\t\t\tconst data={\n\t\t\t\t\t\tphone: values.phone,\n\t\t\t\t\t\temail: values.email,\n\t\t\t\t\t\tUserPassword: values.password,\n\t\t\t\t\t\tsTId:values.stid,\n\t\t\t\t\t}\n return this.$api.updateUser(\n data\n ).then(() => {\n this.$message.success('修改成功');\n this.$store.dispatch('initUser');\n }).catch(e => {\n console.error(e);\n this.$message.error(e.msg || '修改失败');\n throw e;\n });\n },\n });\n },\n },\n};\n</script>\n\n<style scoped lang=\"stylus\">\n.header-avatar\n display inline-flex\n align-items center\n cursor pointer\n padding 0 10px\n .avatar\n position relative\n top -1px\n margin-right 8px\n .name\n font-weight 500\n</style>\n"]}]}