| | |
| | | <div class="login-text-small">WELCOME TO LOGIN</div> |
| | | <div class="item"> |
| | | <div class="input-icon el-icon-user"></div> |
| | | <input |
| | | type="text" |
| | | v-focus |
| | | v-model="userInfo.userName" |
| | | placeholder="请è¾å
¥è´¦å·" |
| | | /> |
| | | <input type="text" v-focus v-model="userInfo.userName" placeholder="请è¾å
¥è´¦å·" /> |
| | | </div> |
| | | <div class="item"> |
| | | <div class="input-icon el-icon-lock"></div> |
| | | <input |
| | | type="password" |
| | | v-focus |
| | | v-model="userInfo.password" |
| | | placeholder="请è¾å
¥å¯ç " |
| | | /> |
| | | <input type="password" v-focus v-model="userInfo.password" placeholder="请è¾å
¥å¯ç " /> |
| | | </div> |
| | | |
| | | <div class="item station-select-item"> |
| | | <div class="item station-select-item"> |
| | | <div class="input-icon el-icon-lock"></div> |
| | | <el-select |
| | | v-model="stationValue" |
| | | placeholder="éæ©ç«å°" |
| | | class="station-select" |
| | | @change="handleStationChange" |
| | | > |
| | | <el-option |
| | | v-for="item in stationOptions" |
| | | :key="item.value" |
| | | :label="item.label" |
| | | :value="item.value" |
| | | /> |
| | | <el-select v-model="stationValue" placeholder="éæ©ç«å°" class="station-select" @change="handleStationChange"> |
| | | <el-option v-for="item in stationOptions" :key="item.value" :label="item.label" :value="item.value" /> |
| | | </el-select> |
| | | </div> |
| | | |
| | | |
| | | <div class="item"> |
| | | <div class="input-icon el-icon-mobile"></div> |
| | | <input |
| | | v-focus |
| | | type="text" |
| | | v-model="userInfo.verificationCode" |
| | | placeholder="è¾å
¥éªè¯ç " |
| | | /> |
| | | <div class="code" @click="getVierificationCode"> |
| | | <img v-show="codeImgSrc != ''" :src="codeImgSrc" /> |
| | | </div> |
| | | </div> |
| | | |
| | | |
| | | </div> |
| | | <div class="loging-btn"> |
| | | <el-button |
| | | size="large" |
| | | :loading="loading" |
| | | color="#3a6cd1" |
| | | :dark="true" |
| | | @click="login" |
| | | long |
| | | > |
| | | <el-button size="large" :loading="loading" color="#3a6cd1" :dark="true" @click="login" long> |
| | | <span v-if="!loading">ç»å½</span> |
| | | <span v-else>æ£å¨ç»å½...</span> |
| | | </el-button> |
| | |
| | | const userInfo = reactive({ |
| | | userName: "", |
| | | password: "", |
| | | verificationCode: "", |
| | | verificationCode: "1234", |
| | | UUID: undefined, |
| | | }); |
| | | const stationValue = ref(""); |
| | | const stationOptions = reactive([ |
| | | const stationValue = ref(""); |
| | | const stationOptions = reactive([ |
| | | { label: "ç«å°2", value: "2-1" }, |
| | | { label: "ç«å°3", value: "3-1" }, |
| | | ]); |
| | | // åå§åç«å°å¼ |
| | | // åå§åç«å°å¼ |
| | | onMounted(() => { |
| | | // 仿¬å°åå¨å è½½ä¿åçç«å°å¼ |
| | | const savedStation = stationManager.getStation(); |
| | |
| | | const login = () => { |
| | | if (!userInfo.userName) return $message.error("请è¾å
¥ç¨æ·å"); |
| | | if (!userInfo.password) return $message.error("请è¾å
¥å¯ç "); |
| | | if (!userInfo.verificationCode) { |
| | | return $message.error("请è¾å
¥éªè¯ç "); |
| | | } |
| | | |
| | | |
| | | // ç¡®ä¿ç«å°å¼å·²ä¿å |
| | | // ç¡®ä¿ç«å°å¼å·²ä¿å |
| | | if (stationValue.value) { |
| | | stationManager.saveStation(stationValue.value); |
| | | store.commit("setStation", stationValue.value); |
| | |
| | | userInfo, |
| | | loginPress, |
| | | openUrl, |
| | | stationOptions, |
| | | stationOptions, |
| | | stationValue, |
| | | handleStationChange, |
| | | }; |
| | |
| | | |
| | | &.station-select-item { |
| | | padding-left: 0; |
| | | |
| | | |
| | | .input-icon { |
| | | margin-left: 20px; |
| | | min-width: 20px; |
| | |
| | | border: none; |
| | | padding: 0; |
| | | background: transparent; |
| | | |
| | | |
| | | // ç§»é¤ææhoverãfocusææ |
| | | &:hover, &:focus, &.is-focus { |
| | | &:hover, |
| | | &:focus, |
| | | &.is-focus { |
| | | box-shadow: none !important; |
| | | outline: none !important; |
| | | border: none !important; |
| | |
| | | font-size: 16px; |
| | | color: #323233; |
| | | cursor: pointer; // æ·»å æéæ¾ç¤ºä¸ºå¯ç¹å» |
| | | |
| | | |
| | | &::placeholder { |
| | | color: #c0c4cc; |
| | | } |
| | |
| | | } |
| | | |
| | | // ç§»é¤æ´ä¸ªç»ä»¶ä¸çä»»ä½hoveråfocusæ ·å¼ |
| | | &:hover, &:focus, &.is-focus { |
| | | &:hover, |
| | | &:focus, |
| | | &.is-focus { |
| | | :deep(.el-input__wrapper) { |
| | | box-shadow: none !important; |
| | | outline: none !important; |
| | |
| | | border: 1px solid #ececec; |
| | | border-radius: 5px; |
| | | box-shadow: 0 2px 12px 0 rgba(0, 0, 0, 0.1); |
| | | |
| | | |
| | | .el-select-dropdown__item { |
| | | height: 45px; |
| | | line-height: 45px; |
| | | font-size: 16px; |
| | | color: #323233; |
| | | padding: 0 20px; |
| | | |
| | | |
| | | &:hover { |
| | | background-color: #f5f7fa; |
| | | } |
| | | |
| | | |
| | | &.selected { |
| | | color: #3a6cd1; |
| | | font-weight: normal; |
| | | background-color: #f0f7ff; |
| | | } |
| | | } |
| | | |
| | | |
| | | // éèæ»å¨æ¡æè°æ´æ»å¨æ¡æ ·å¼ |
| | | &::-webkit-scrollbar { |
| | | width: 6px; |
| | | } |
| | | |
| | | |
| | | &::-webkit-scrollbar-track { |
| | | background: #f1f1f1; |
| | | border-radius: 3px; |
| | | } |
| | | |
| | | |
| | | &::-webkit-scrollbar-thumb { |
| | | background: #c1c1c1; |
| | | border-radius: 3px; |
| | |
| | | |
| | | // ç§»é¤ææinputçfocusåhoveræ ·å¼ |
| | | input { |
| | | &:hover, &:focus { |
| | | |
| | | &:hover, |
| | | &:focus { |
| | | border: none !important; |
| | | outline: none !important; |
| | | box-shadow: none !important; |
| | |
| | | |
| | | <style lang="less" scoped> |
| | | @media screen and (max-width: 700px) { |
| | | |
| | | .login-bg, |
| | | .account-info, |
| | | .app-link, |