| 1 |
- {"remainingRequest":"/usr/local/develop/php/www/waibao/project/NN2022060801/addons/admin/node_modules/babel-loader/lib/index.js!/usr/local/develop/php/www/waibao/project/NN2022060801/addons/admin/node_modules/cache-loader/dist/cjs.js??ref--0-0!/usr/local/develop/php/www/waibao/project/NN2022060801/addons/admin/node_modules/vue-loader/lib/index.js??vue-loader-options!/usr/local/develop/php/www/waibao/project/NN2022060801/addons/admin/src/views/login/login.vue?vue&type=script&lang=js&","dependencies":[{"path":"/usr/local/develop/php/www/waibao/project/NN2022060801/addons/admin/src/views/login/login.vue","mtime":1655259873152},{"path":"/usr/local/develop/php/www/waibao/project/NN2022060801/addons/admin/node_modules/cache-loader/dist/cjs.js","mtime":499162500000},{"path":"/usr/local/develop/php/www/waibao/project/NN2022060801/addons/admin/node_modules/babel-loader/lib/index.js","mtime":499162500000},{"path":"/usr/local/develop/php/www/waibao/project/NN2022060801/addons/admin/node_modules/cache-loader/dist/cjs.js","mtime":499162500000},{"path":"/usr/local/develop/php/www/waibao/project/NN2022060801/addons/admin/node_modules/vue-loader/lib/index.js","mtime":499162500000}],"contextDependencies":[],"result":[{"type":"Buffer","data":"base64:Ly8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KZXhwb3J0IGRlZmF1bHQgewogIG5hbWU6ICdMb2dpbicsCiAgZGF0YTogZnVuY3Rpb24gZGF0YSgpIHsKICAgIHJldHVybiB7CiAgICAgIC8vIOeZu+W9leahhuaWueWQkSwgMOWxheS4rSwgMeWxheWPsywgMuWxheW3pgogICAgICBkaXJlY3Rpb246IDEsCiAgICAgIC8vIOWKoOi9veeKtuaAgQogICAgICBsb2FkaW5nOiBmYWxzZSwKICAgICAgLy8g6KGo5Y2V5pWw5o2uCiAgICAgIGZvcm06IHsKICAgICAgICB1c2VybmFtZTogJ2FkbWluJywKICAgICAgICBwYXNzd29yZDogJzEyMzQ1NicsCiAgICAgICAgY2FwdGNoYTogJycsCiAgICAgICAgcmVtZW1iZXI6IHRydWUsCiAgICAgICAga2V5OiAnJwogICAgICB9LAogICAgICAvLyDooajljZXpqozor4Hop4TliJkKICAgICAgcnVsZXM6IHsKICAgICAgICAvLyDooajljZXpqozor4Hop4TliJkKICAgICAgICB1c2VybmFtZTogW3sKICAgICAgICAgIHJlcXVpcmVkOiB0cnVlLAogICAgICAgICAgbWVzc2FnZTogJ+ivt+i+k+WFpei0puWPtycsCiAgICAgICAgICB0cmlnZ2VyOiAnYmx1cicKICAgICAgICB9XSwKICAgICAgICBwYXNzd29yZDogW3sKICAgICAgICAgIHJlcXVpcmVkOiB0cnVlLAogICAgICAgICAgbWVzc2FnZTogJ+ivt+i+k+WFpeWvhueggScsCiAgICAgICAgICB0cmlnZ2VyOiAnYmx1cicKICAgICAgICB9XSwKICAgICAgICBjYXB0Y2hhOiBbewogICAgICAgICAgcmVxdWlyZWQ6IHRydWUsCiAgICAgICAgICBtZXNzYWdlOiAn6K+36L6T5YWl6aqM6K+B56CBJywKICAgICAgICAgIHRyaWdnZXI6ICdibHVyJwogICAgICAgIH1dCiAgICAgIH0sCiAgICAgIGNhcHRjaGE6ICcnCiAgICB9OwogIH0sCiAgbW91bnRlZDogZnVuY3Rpb24gbW91bnRlZCgpIHsKICAgIGlmICh0aGlzLiRzdG9yZS5zdGF0ZS51c2VyLnRva2VuKSB0aGlzLiRyb3V0ZXIucHVzaCh0aGlzLiRyb3V0ZS5xdWVyeS5mcm9tIHx8ICcvJyk7CiAgICB0aGlzLmNoYW5nZUNhcHRjaGEoKTsKICB9LAogIG1ldGhvZHM6IHsKICAgIC8qIOaPkOS6pCAqLwogICAgZG9TdWJtaXQ6IGZ1bmN0aW9uIGRvU3VibWl0KCkgewogICAgICB2YXIgX3RoaXMgPSB0aGlzOwoKICAgICAgdGhpcy4kcmVmc1snbG9naW5Gb3JtJ10udmFsaWRhdGUoZnVuY3Rpb24gKHZhbGlkKSB7CiAgICAgICAgaWYgKCF2YWxpZCkgewogICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgIH0gLy8gaWYgKHRoaXMuZm9ybS5jYXB0Y2hhLnRvTG93ZXJDYXNlKCkgIT09IHRoaXMudGV4dCkgewogICAgICAgIC8vICAgdGhpcy4kbWVzc2FnZS5lcnJvcign6aqM6K+B56CB6ZSZ6K+vJyk7CiAgICAgICAgLy8gICByZXR1cm47CiAgICAgICAgLy8gfQoKCiAgICAgICAgX3RoaXMubG9hZGluZyA9IHRydWU7IC8vIGxldCBmb3JtRGF0YSA9IG5ldyBGb3JtRGF0YSgpOwogICAgICAgIC8vIGZvciAobGV0IGtleSBpbiB0aGlzLmZvcm0pIHsKICAgICAgICAvLyAgIGZvcm1EYXRhLmFwcGVuZChrZXksIHRoaXMuZm9ybVtrZXldKTsKICAgICAgICAvLyB9CgogICAgICAgIHZhciBmb3JtRGF0YSA9IG5ldyBGb3JtRGF0YSgpOwoKICAgICAgICBmb3IgKHZhciBrZXkgaW4gX3RoaXMuZm9ybSkgewogICAgICAgICAgZm9ybURhdGEuYXBwZW5kKGtleSwgX3RoaXMuZm9ybVtrZXldKTsKICAgICAgICB9CgogICAgICAgIGNvbnNvbGUubG9nKF90aGlzLmZvcm0pOwoKICAgICAgICBfdGhpcy4kaHR0cC5wb3N0KCcvbG9naW4nLCBfdGhpcy5mb3JtKS50aGVuKGZ1bmN0aW9uIChyZXMpIHsKICAgICAgICAgIF90aGlzLmxvYWRpbmcgPSBmYWxzZTsKCiAgICAgICAgICBpZiAocmVzLmRhdGEuY29kZSA9PT0gMCkgewogICAgICAgICAgICBfdGhpcy4kbWVzc2FnZSh7CiAgICAgICAgICAgICAgdHlwZTogJ3N1Y2Nlc3MnLAogICAgICAgICAgICAgIG1lc3NhZ2U6ICfnmbvlvZXmiJDlip8nCiAgICAgICAgICAgIH0pOwoKICAgICAgICAgICAgX3RoaXMuJHN0b3JlLmRpc3BhdGNoKCd1c2VyL3NldFRva2VuJywgJ0JlYXJlciAnICsgcmVzLmRhdGEuZGF0YS5hY2Nlc3NfdG9rZW4pLnRoZW4oZnVuY3Rpb24gKCkgewogICAgICAgICAgICAgIF90aGlzLiRyb3V0ZXIucHVzaChfdGhpcy4kcm91dGUucXVlcnkuZnJvbSB8fCAnLycpLmNhdGNoKGZ1bmN0aW9uICgpIHt9KTsKICAgICAgICAgICAgfSk7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBfdGhpcy4kbWVzc2FnZS5lcnJvcihyZXMuZGF0YS5tc2cpOwogICAgICAgICAgfQogICAgICAgIH0pLmNhdGNoKGZ1bmN0aW9uIChlKSB7CiAgICAgICAgICBjb25zb2xlLmxvZyhlKTsKICAgICAgICAgIF90aGlzLmxvYWRpbmcgPSBmYWxzZTsKCiAgICAgICAgICBfdGhpcy4kbWVzc2FnZS5lcnJvcigi55So5oi35ZCN5oiW5a+G56CB5LiN5q2j56GuIik7CiAgICAgICAgfSk7CiAgICAgIH0pOwogICAgfSwKCiAgICAvKiDmm7TmjaLlm77lvaLpqozor4HnoIEgKi8KICAgIGNoYW5nZUNhcHRjaGE6IGZ1bmN0aW9uIGNoYW5nZUNhcHRjaGEoKSB7CiAgICAgIHZhciBfdGhpczIgPSB0aGlzOwoKICAgICAgdGhpcy4kaHR0cC5nZXQoJy9jYXB0Y2hhJykudGhlbihmdW5jdGlvbiAocmVzKSB7CiAgICAgICAgaWYgKHJlcy5kYXRhLmNvZGUgPT09IDApIHsKICAgICAgICAgIF90aGlzMi5jYXB0Y2hhID0gcmVzLmRhdGEuZGF0YS5jYXB0Y2hhOwogICAgICAgICAgX3RoaXMyLmZvcm0ua2V5ID0gcmVzLmRhdGEuZGF0YS5rZXk7IC8vIHRoaXMuZm9ybS5jYXB0Y2hhID0gdGhpcy50ZXh0OwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICBfdGhpczIuJG1lc3NhZ2UuZXJyb3IocmVzLmRhdGEubXNnKTsKICAgICAgICB9CiAgICAgIH0pLmNhdGNoKGZ1bmN0aW9uIChlKSB7CiAgICAgICAgX3RoaXMyLiRtZXNzYWdlLmVycm9yKGUubWVzc2FnZSk7CiAgICAgIH0pOwogICAgfQogIH0KfTs="},{"version":3,"sources":["login.vue"],"names":[],"mappings":"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","sourcesContent":["<template>\n <div :class=\"['login-wrapper', ['','login-form-right','login-form-left'][direction]]\">\n <el-form\n ref=\"loginForm\"\n :model=\"form\"\n :rules=\"rules\"\n class=\"login-form ele-bg-white\"\n size=\"large\"\n @keyup.enter.native=\"doSubmit\">\n <h4>后台管理</h4>\n <el-form-item prop=\"username\">\n <el-input\n placeholder=\"请输入登录账号\"\n v-model=\"form.username\"\n prefix-icon=\"el-icon-user\"\n clearable/>\n </el-form-item>\n <el-form-item prop=\"password\">\n <el-input\n placeholder=\"请输入登录密码\"\n v-model=\"form.password\"\n prefix-icon=\"el-icon-lock\"\n show-password/>\n </el-form-item>\n <el-form-item prop=\"captcha\">\n <div class=\"login-input-group\">\n <el-input\n placeholder=\"请输入验证码\"\n v-model=\"form.captcha\"\n prefix-icon=\"el-icon-_vercode\"/>\n <img\n v-if=\"captcha\"\n :src=\"captcha\"\n @click=\"changeCaptcha\"\n class=\"login-captcha\"\n alt=\"\"/>\n </div>\n </el-form-item>\n <div class=\"el-form-item\">\n <el-checkbox\n v-model=\"form.remember\">记住密码\n </el-checkbox>\n <!-- <el-link\n @click=\"$router.push('/forget')\"\n type=\"primary\"\n class=\"ele-pull-right\"\n :underline=\"false\">忘记密码\n </el-link> -->\n </div>\n <div class=\"el-form-item\">\n <el-button\n @click=\"doSubmit\"\n :loading=\"loading\"\n type=\"primary\"\n class=\"login-btn\"\n size=\"large\">\n {{ loading ? '登录中' : '登录' }}\n </el-button>\n </div>\n </el-form>\n <div class=\"login-copyright\">Copyright © 2017~2021 www.laravel.cn. All rights reserved.</div>\n </div>\n</template>\n\n<script>\nexport default {\n name: 'Login',\n data() {\n return {\n // 登录框方向, 0居中, 1居右, 2居左\n direction: 1,\n // 加载状态\n loading: false,\n // 表单数据\n form: {\n username: 'admin',\n password: '123456',\n captcha: '',\n remember: true,\n key:''\n },\n // 表单验证规则\n rules: { // 表单验证规则\n username: [\n {required: true, message: '请输入账号', trigger: 'blur'}\n ],\n password: [\n {required: true, message: '请输入密码', trigger: 'blur'}\n ],\n captcha: [\n {required: true, message: '请输入验证码', trigger: 'blur'}\n ]\n },\n captcha: '',\n }\n },\n mounted() {\n if (this.$store.state.user.token) this.$router.push(this.$route.query.from || '/');\n this.changeCaptcha();\n },\n methods: {\n /* 提交 */\n doSubmit() {\n this.$refs['loginForm'].validate((valid) => {\n if (!valid) {\n return false;\n }\n // if (this.form.captcha.toLowerCase() !== this.text) {\n // this.$message.error('验证码错误');\n // return;\n // }\n this.loading = true;\n // let formData = new FormData();\n // for (let key in this.form) {\n // formData.append(key, this.form[key]);\n // }\n let formData = new FormData();\n for (let key in this.form) formData.append(key, this.form[key]);\n console.log(this.form)\n this.$http.post('/login', this.form).then((res) => {\n this.loading = false;\n if (res.data.code === 0) {\n this.$message({type: 'success', message: '登录成功'});\n this.$store.dispatch('user/setToken', 'Bearer ' + res.data.data.access_token).then(() => {\n this.$router.push(this.$route.query.from || '/').catch(() => {\n });\n });\n } else {\n this.$message.error(res.data.msg);\n }\n }).catch(e => {\n console.log(e)\n this.loading = false;\n this.$message.error(\"用户名或密码不正确\");\n });\n });\n },\n /* 更换图形验证码 */\n changeCaptcha() {\n this.$http.get('/captcha').then(res => {\n if (res.data.code === 0) {\n this.captcha = res.data.data.captcha;\n this.form.key = res.data.data.key;\n // this.form.captcha = this.text;\n } else {\n this.$message.error(res.data.msg);\n }\n }).catch(e => {\n this.$message.error(e.message);\n });\n }\n }\n}\n</script>\n\n<style scoped>\n.login-wrapper {\n padding: 50px 20px;\n position: relative;\n box-sizing: border-box;\n background-image: url(\"~@/assets/bg-login.png\");\n background-repeat: no-repeat;\n background-size: cover;\n min-height: 100vh;\n background-size: 100% 100%;\n}\n\n.login-wrapper:before {\n content: \"\";\n background-color: rgba(0, 0, 0, .2);\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n}\n\n.login-form {\n margin: 0 auto;\n width: 360px;\n max-width: 100%;\n padding: 25px 30px;\n position: relative;\n box-shadow: 0 3px 6px rgba(0, 0, 0, 0.15);\n box-sizing: border-box;\n border-radius: 4px;\n z-index: 2;\n}\n\n.login-form-right .login-form {\n margin: 0 15% 0 auto;\n}\n\n.login-form-left .login-form {\n margin: 0 auto 0 15%;\n}\n\n.login-form h4 {\n text-align: center;\n margin: 0 0 25px 0;\n}\n\n.login-form > .el-form-item {\n margin-bottom: 25px;\n}\n\n.login-input-group {\n display: flex;\n align-items: center;\n}\n\n.login-input-group ::v-deep .el-input {\n flex: 1;\n}\n\n.login-captcha {\n height: 38px;\n width: 102px;\n margin-left: 10px;\n border-radius: 4px;\n border: 1px solid #DCDFE6;\n text-align: center;\n cursor: pointer;\n}\n\n.login-captcha:hover {\n opacity: .75;\n}\n\n.login-btn {\n display: block;\n width: 100%;\n}\n\n.login-oauth-icon {\n color: #FFF;\n padding: 5px;\n margin: 0 10px;\n font-size: 18px;\n border-radius: 50%;\n cursor: pointer;\n}\n\n.login-copyright {\n color: #eee;\n padding-top: 20px;\n text-align: center;\n position: relative;\n z-index: 1;\n}\n\n@media screen and (min-height: 550px) {\n .login-form {\n position: absolute;\n top: 50%;\n left: 50%;\n transform: translateX(-50%);\n margin-top: -220px;\n }\n\n .login-form-right .login-form,\n .login-form-left .login-form {\n left: auto;\n right: 15%;\n transform: translateX(0);\n margin: -220px 100px auto auto;\n }\n\n .login-form-left .login-form {\n right: auto;\n left: 15%;\n }\n\n .login-copyright {\n position: absolute;\n bottom: 20px;\n right: 0;\n left: 0;\n }\n}\n\n@media screen and (max-width: 768px) {\n .login-form-right .login-form,\n .login-form-left .login-form {\n left: 50%;\n right: auto;\n transform: translateX(-50%);\n margin-right: auto;\n }\n}\n</style>\n"],"sourceRoot":"src/views/login"}]}
|