You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

1 line
12 KiB

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

{"remainingRequest":"/Users/linhuakun/Downloads/coderlhk/big bar/bigbar-start/node_modules/vue-loader/lib/index.js??vue-loader-options!/Users/linhuakun/Downloads/coderlhk/big bar/bigbar-start/src/views/login/Iphone.vue?vue&type=style&index=0&id=4e2738dd&scoped=true&lang=css&","dependencies":[{"path":"/Users/linhuakun/Downloads/coderlhk/big bar/bigbar-start/src/views/login/Iphone.vue","mtime":1618028207830},{"path":"/Users/linhuakun/Downloads/coderlhk/big bar/bigbar-start/node_modules/css-loader/dist/cjs.js","mtime":499162500000},{"path":"/Users/linhuakun/Downloads/coderlhk/big bar/bigbar-start/node_modules/vue-loader/lib/loaders/stylePostLoader.js","mtime":499162500000},{"path":"/Users/linhuakun/Downloads/coderlhk/big bar/bigbar-start/node_modules/postcss-loader/src/index.js","mtime":499162500000},{"path":"/Users/linhuakun/Downloads/coderlhk/big bar/bigbar-start/node_modules/cache-loader/dist/cjs.js","mtime":499162500000},{"path":"/Users/linhuakun/Downloads/coderlhk/big bar/bigbar-start/node_modules/vue-loader/lib/index.js","mtime":499162500000}],"contextDependencies":[],"result":[{"type":"Buffer","data":"base64:CgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCi5nZXRWZXJpZnkgewogIGNvbG9yOiAjNDA5ZWZmOwogIGJvcmRlci1jb2xvcjogI2M2ZTJmZjsKICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWNmNWZmOwp9CgouZ2V0VmVyaWZ5IHsKICB3aWR0aDogMzAlOwogIG1hcmdpbi1sZWZ0OiAxMCU7CiAgdGV4dC1hbGlnbjogY2VudGVyOwogIGZvbnQtc2l6ZTogMTJweDsKfQouYmFjayB7CiAgcG9zaXRpb246IHJlbGF0aXZlOwogIHdpZHRoOiAzMHB4OwogIGhlaWdodDogMzBweDsKICB0b3A6IDUwJTsKICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTsKfQoKLmxvZ2luX2NvbnRhaW5lciB7CiAgaGVpZ2h0OiAxMDB2aDsKICBwb3NpdGlvbjogcmVsYXRpdmU7Cn0KCi52ZXJpZnlNZXNzYWdlIHsKICB3aWR0aDogNjAlOwp9CgoubG9naW5fY29udGFpbmVyIC50b3AgLmxvZ28gewogIHRvcDogNTAlOwogIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpOwogIHJpZ2h0OiAxMHB4OwogIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICBoZWlnaHQ6IDMwcHg7CiAgd2lkdGg6IDMwcHg7Cn0KCi5sb2dpbl9jb250YWluZXIgLnRvcCB7CiAgcG9zaXRpb246IHJlbGF0aXZlOwogIGhlaWdodDogNDRweDsKICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzgzZDQxOwogIGNvbG9yOiAjZmZmOwogIHRleHQtYWxpZ246IGNlbnRlcjsKfQoKLmxvZ2luX2NvbnRhaW5lciAudG9wIC5pY29uIHsKICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgdG9wOiA1MCU7CiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7CiAgZm9udC1zaXplOiAxMnB4OwogIHJpZ2h0OiA0NXB4Owp9CgoubG9naW5fY29udGFpbmVyIC50b3AgLmljb24gewogIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICB0b3A6IDUwJTsKICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTsKICBmb250LXNpemU6IDEycHg7CiAgcmlnaHQ6IDQ1cHg7Cn0KCi5sb2dpbl9jb250YWluZXIgLnRvcCBzcGFuIHsKICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgbGVmdDogNTAlOwogIHRvcDogNTAlOwogIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpOwp9CgoubG9naW5fZm9ybSB7CiAgd2lkdGg6IDg1JTsKICBtYXJnaW46IDAgYXV0bzsKICBtYXJnaW4tdG9wOiA0MHB4Owp9CgouYnRucy1sb2dpbiB7CiAgd2lkdGg6IDEwMCU7Cn0KCi5vdGhlci1sb2dpbiB7CiAgbWFyZ2luLXRvcDogNTBweDsKICB0ZXh0LWFsaWduOiBjZW50ZXI7Cn0KCi5ib3R0b20gewogIG1hcmdpbjogMCBhdXRvOwogIG1hcmdpbi10b3A6IDEwcHg7CiAgd2lkdGg6IDg1JTsKICBoZWlnaHQ6IDIwMHB4OwogIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZjVmNWY1Owp9Ci5ib3R0b20gaW1nIHsKICBtYXJnaW4tdG9wOiAyMHB4OwogIHBvc2l0aW9uOiByZWxhdGl2ZTsKICBsZWZ0OiA1MCU7CiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgMCk7Cn0KLnJlZ2lzdGVyIHsKICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgaGVpZ2h0OiAyMHB4OwogIHdpZHRoOiAyMHB4OwogIGZvbnQtc2l6ZTogMTJweDsKICBjb2xvcjogIzQwOWVmZjsKICByaWdodDogMHB4Owp9Cg=="},{"version":3,"sources":["Iphone.vue"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAiMA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA","file":"Iphone.vue","sourceRoot":"src/views/login","sourcesContent":["<template>\n <div class=\"login_container\">\n <div class=\"top\">\n <div class=\"back\" @click=\"backClick\">\n <img src=\"@/assets/img/home/back.svg\" alt=\"\" />\n </div>\n <span>短信登录</span>\n <div>\n <img src=\"@/assets/img/cart/logo.jpg\" class=\"logo\" alt=\"\" />\n <div class=\"icon\">big bar</div>\n </div>\n </div>\n <div class=\"login_box\">\n <!-- 登陆区域 -->\n <el-form\n ref=\"verifyFormRef\"\n label-width=\"0px\"\n class=\"login_form\"\n :model=\"verifyForm\"\n :rules=\"verifyFormRules\"\n >\n <el-form-item prop=\"iphone\">\n <el-input\n placeholder=\"请输入手机号\"\n v-model=\"verifyForm.iphone\"\n prefix-icon=\"el-icon-phone\"\n ref=\"iphoneFormRef\"\n ></el-input>\n </el-form-item>\n <el-form-item prop=\"code\" class=\"verify\">\n <el-input\n class=\"verifyMessage\"\n placeholder=\"请输入验证码\"\n v-model=\"verifyForm.code\"\n prefix-icon=\"el-icon-s-goods\"\n ></el-input>\n <el-button class=\"getVerify\" @click=\"emitsmsverify\">验证码</el-button>\n </el-form-item>\n <el-form-item>\n <el-row>\n <el-button class=\"btns-login\" type=\"primary\" @click=\"login\">登陆</el-button>\n </el-row>\n <!-- <el-button type=\"info\" @click=\"infoRegister\">注册</el-button> -->\n </el-form-item>\n </el-form>\n </div>\n\n\n </div>\n</template>\n\n<script>\n// import loginfature from \"./chilidComps/loginfature\"\n// import Scroll from '@/components/common/Scroll/Scroll'\n\nexport default {\n name: \"Iphone\",\n components: {},\n data() {\n var checkphone = (rule, value, callback) => {\n // let phoneReg = /(^1[3|4|5|6|7|8|9]\\d{9}$)|(^09\\d{8}$)/;\n if (value === \"\") {\n callback(new Error(\"请输入手机号\"));\n } else if (!this.isCellPhone(value)) {\n // 引入methods中封装的检查手机格式的方法\n callback(new Error(\"请输入正确的手机号!\"));\n } else {\n callback();\n }\n };\n return {\n verifyForm: {\n iphone: \"\",\n code: \"\"\n },\n verifyFormRules: {\n //验证用户名是否合法\n iphone: [\n { required: true, message: \"请输入电话号码\", trigger: \"blur\" },\n { validator: checkphone, trigger: \"blur\" }\n ],\n //验证密码是否合法\n code: [\n { required: true, message: \"请输入验证码\", trigger: \"blur\" },\n {\n min: 6,\n max: 6,\n message: \"验证码为6位\",\n trigger: \"blur\"\n }\n ]\n }\n };\n },\n methods: {\n async emitsmsverify() {\n this.$refs.verifyFormRef.validateField(\"iphone\", async err => {\n if (err) return;\n this.emitsms();\n var formData = new URLSearchParams();\n formData.append(\"iphone\", this.verifyForm.iphone);\n try {\n await this.$http({\n method: \"post\",\n url: \"/sms/get\",\n data: formData\n });\n this.$message.success(\"发送成功\");\n } catch {\n err => {\n this.$message.error(\"发送失败\");\n };\n }\n });\n },\n emitsms() {\n const btn = document.getElementsByClassName(\"getVerify\")[0];\n btn.setAttribute(\"disabled\", true);\n let time;\n let localtime = window.sessionStorage.getItem(\"time\");\n if (localtime == 0 || localtime == null) {\n time = 60;\n } else {\n time = localtime;\n }\n let timer = setInterval(function() {\n if (time >= 0) {\n btn.style.color = \"#606266\";\n btn.style.borderColor = \"#DCDFE6\";\n btn.style.backgroundColor = \"#FFF\";\n btn.innerHTML = time-- + \"秒\";\n window.sessionStorage.setItem(\"time\", time + 1);\n } else {\n clearInterval(timer);\n btn.disabled = false;\n btn.style.color = \"#409EFF\";\n btn.style.borderColor = \"#c6e2ff\";\n btn.style.backgroundColor = \"#ecf5ff\";\n btn.innerHTML = \"验证码\";\n }\n }, 1000);\n // setInterval(function(){\n // this.isclick=false\n // },60000)\n },\n isCellPhone(val) {\n if (!/^1(3|4|5|6|7|8|9)\\d{9}$/.test(val)) {\n return false;\n } else {\n return true;\n }\n },\n backClick() {\n this.$router.push(\"/login\");\n },\n login() {\n this.$refs.verifyFormRef.validate(async valid => {\n if (!valid) return;\n try {\n const { data: res } = await this.$http.post(\"/sms/login\", this.verifyForm);\n console.log(res);\n this.$message.success(\"如果第一次登录默认密码123456\");\n window.localStorage.setItem(\"token\", res.token);\n window.localStorage.setItem(\"userId\", res.id);\n window.localStorage.setItem(\"name\", res.name);\n window.localStorage.setItem(\"ispraise\", \"1\");\n window.localStorage.setItem(\"number\", \"0\");\n this.$bus.$emit('isallrefreshInfo')\n this.$router.push(\"/home\");\n } catch (err) {\n this.$message.error(\"登录失败\");\n }\n });\n }\n },\n mounted() {\n // window.onresize监听页面高度的变化\n window.onresize = () => {\n return (() => {\n this.showHeight = document.body.clientHeight;\n })();\n };\n\n let localtimer = window.sessionStorage.getItem(\"time\");\n if (localtimer == 0||localtimer==null) {\n }else{\n this.emitsms();\n }\n }\n};\n</script>\n\n<style scoped>\n.getVerify {\n color: #409eff;\n border-color: #c6e2ff;\n background-color: #ecf5ff;\n}\n\n.getVerify {\n width: 30%;\n margin-left: 10%;\n text-align: center;\n font-size: 12px;\n}\n.back {\n position: relative;\n width: 30px;\n height: 30px;\n top: 50%;\n transform: translate(0, -50%);\n}\n\n.login_container {\n height: 100vh;\n position: relative;\n}\n\n.verifyMessage {\n width: 60%;\n}\n\n.login_container .top .logo {\n top: 50%;\n transform: translate(0, -50%);\n right: 10px;\n position: absolute;\n height: 30px;\n width: 30px;\n}\n\n.login_container .top {\n position: relative;\n height: 44px;\n background-color: #383d41;\n color: #fff;\n text-align: center;\n}\n\n.login_container .top .icon {\n position: absolute;\n top: 50%;\n transform: translate(0, -50%);\n font-size: 12px;\n right: 45px;\n}\n\n.login_container .top .icon {\n position: absolute;\n top: 50%;\n transform: translate(0, -50%);\n font-size: 12px;\n right: 45px;\n}\n\n.login_container .top span {\n position: absolute;\n left: 50%;\n top: 50%;\n transform: translate(-50%, -50%);\n}\n\n.login_form {\n width: 85%;\n margin: 0 auto;\n margin-top: 40px;\n}\n\n.btns-login {\n width: 100%;\n}\n\n.other-login {\n margin-top: 50px;\n text-align: center;\n}\n\n.bottom {\n margin: 0 auto;\n margin-top: 10px;\n width: 85%;\n height: 200px;\n border-top: 1px solid #f5f5f5;\n}\n.bottom img {\n margin-top: 20px;\n position: relative;\n left: 50%;\n transform: translate(-50%, 0);\n}\n.register {\n position: relative;\n height: 20px;\n width: 20px;\n font-size: 12px;\n color: #409eff;\n right: 0px;\n}\n</style>\n"]}]}