From 904436a616ca08fc95e1cbbbd13059835ef37e72 Mon Sep 17 00:00:00 2001 From: liukangdong <898885815@qq.com> Date: 星期四, 23 一月 2025 13:51:37 +0800 Subject: [PATCH] ll --- h5/pages/driver/login.vue | 297 ++++++++++++++++++++++++++++++---------------------------- 1 files changed, 153 insertions(+), 144 deletions(-) diff --git a/h5/pages/driver/login.vue b/h5/pages/driver/login.vue index 28c5d00..ed090be 100644 --- a/h5/pages/driver/login.vue +++ b/h5/pages/driver/login.vue @@ -3,43 +3,42 @@ <image class="login_bg" src="@/static/login_bg@2x.png" mode="widthFix" /> <image class="login_logo" src="@/static/logo@2x.png" mode="widthFix" /> <view class="login_title">瀹夋嘲鐗╂祦鏅烘収鍥尯</view> - <view class="login_title">鐗╂祦杞﹀徃鏈虹櫥褰�</view> - <view class="tabs"> - <view class="tab" @click="tabsClick(0)" :class="{active: activeTab == 0 }"><view>璐﹀彿鐧诲綍</view><view class="bor"></view></view> - <view class="tab" @click="tabsClick(1)" :class="{active: activeTab == 1 }"><view>楠岃瘉鐮佺櫥褰�</view><view class="bor"></view></view> + <view class="login_title">鐗╂祦杞﹀徃鏈虹櫥褰�</view> + <view class="tabs"> + <view class="tab" @click="tabsClick(0)" :class="{active: activeTab == 0 }"> + <view>璐﹀彿鐧诲綍</view> + <view class="bor"></view> + </view> + <view class="tab" @click="tabsClick(1)" :class="{active: activeTab == 1 }"> + <view>楠岃瘉鐮佺櫥褰�</view> + <view class="bor"></view> + </view> </view> <view class="login_list"> - <template v-if="activeTab == 0"> - <view class="login_list_item"> - <image src="@/static/login_ic_phone@2x.png" mode="widthFix" /> - <input v-model="form.username" type="tel" @focus="showKeyboard = true" @blur="showKeyboard = false" - maxlength="18" placeholder="璐﹀彿" /> - </view> - <view class="login_list_item"> - <image src="@/static/login_ic_password@2x.png" mode="widthFix" /> - <input v-model="form.password" @focus="showKeyboard = true" @blur="showKeyboard = false" type="password" - placeholder="瀵嗙爜" /> - </view> - </template> - <template v-else> - <view class="login_list_item"> - <image src="@/static/login_ic_phone@2x.png" mode="widthFix" /> - <input v-model="form.phone" type="tel" @focus="showKeyboard = true" @blur="showKeyboard = false" - :maxlength="18" placeholder="鎵嬫満鍙�" /> - </view> - <view class="login_list_item"> - <image src="@/static/ic_captcha.png" mode="widthFix"></image> - <input - v-model="form.code" - placeholder="璇疯緭鍏ラ獙璇佺爜" - :maxlength="6" - type="number" - /> - <text class="captcha" v-if="countDown == 0" @click="initCaptcha" - >鑾峰彇楠岃瘉鐮�</text - > - <text class="placeholder9" v-else>{{ countDown }}</text> - </view> + <template v-if="activeTab == 0"> + <view class="login_list_item"> + <image src="@/static/login_ic_phone@2x.png" mode="widthFix" /> + <input v-model="form.username" type="tel" @focus="showKeyboard = true" @blur="showKeyboard = false" + maxlength="18" placeholder="璐﹀彿" /> + </view> + <view class="login_list_item"> + <image src="@/static/login_ic_password@2x.png" mode="widthFix" /> + <input v-model="form.password" @focus="showKeyboard = true" @blur="showKeyboard = false" type="password" + placeholder="瀵嗙爜" /> + </view> + </template> + <template v-else> + <view class="login_list_item"> + <image src="@/static/login_ic_phone@2x.png" mode="widthFix" /> + <input v-model="form.phone" type="tel" @focus="showKeyboard = true" @blur="showKeyboard = false" + :maxlength="18" placeholder="鎵嬫満鍙�" /> + </view> + <view class="login_list_item"> + <image src="@/static/ic_captcha.png" mode="widthFix"></image> + <input v-model="form.code" placeholder="璇疯緭鍏ラ獙璇佺爜" :maxlength="6" type="number" /> + <text class="captcha" v-if="countDown == 0" @click="initCaptcha">鑾峰彇楠岃瘉鐮�</text> + <text class="placeholder9" v-else>{{ countDown }}</text> + </view> </template> </view> <view class="login_btn"> @@ -58,9 +57,9 @@ import { driverLogin, loginCaptcha, - getUserInfo, - sendSms, - loginDriverByPhone + getUserInfo, + sendSms, + loginDriverByPhone } from '@/api' import { mapState, @@ -70,114 +69,119 @@ data() { return { form: { - username: null, + username: null, phone: null, password: null }, isShowProtocol: false, showKeyboard: false, - countDown: 0, - activeTab: 0, - + countDown: 0, + activeTab: 0, + ywinfo: {} } }, onLoad() { const ywinfo = uni.getStorageSync('ywinfo') || {} - if (ywinfo.ywid && ywinfo.type == 0) { + if (ywinfo.ywid && ywinfo.type == 0) { this.ywinfo = ywinfo uni.setStorageSync('ywinfo', {}) } }, - methods: { - onLogin() { - const { - form,activeTab - } = this - if(activeTab == 0){ - if (!form.username) return uni.showToast({ - title: '璐﹀彿涓嶈兘涓虹┖', - icon: 'none' - }) - if (!form.password) return uni.showToast({ - title: '瀵嗙爜涓嶈兘涓虹┖', - icon: 'none' - }) - }else{ - if (!form.phone) return uni.showToast({ - title: '鎵嬫満鍙蜂笉鑳戒负绌�', - icon: 'none' - }) - if (!form.code) return uni.showToast({ - title: '楠岃瘉鐮佷笉鑳戒负绌�', - icon: 'none' - }) - } - let fn = activeTab == 0 ? driverLogin : loginDriverByPhone - fn({ - ...form, - openid: this.$store.state.openId, - }).then(res => { - if (res.code === 200) { - this.setToken(res.data) - getUserInfo().then(ress => { - setTimeout(() => { - this.showToast('鐧诲綍鎴愬姛') - }) - uni.setStorageSync('ywinfo', this.ywinfo) - this.setDriverInfo(ress.data) - uni.redirectTo({ - url: "/pages/driver/index" - }) - }) - } - }) + methods: { + onLogin() { + const { + form, + activeTab + } = this + if (activeTab == 0) { + if (!form.username) return uni.showToast({ + title: '璐﹀彿涓嶈兘涓虹┖', + icon: 'none' + }) + if (!form.password) return uni.showToast({ + title: '瀵嗙爜涓嶈兘涓虹┖', + icon: 'none' + }) + } else { + if (!form.phone) return uni.showToast({ + title: '鎵嬫満鍙蜂笉鑳戒负绌�', + icon: 'none' + }) + if (!form.code) return uni.showToast({ + title: '楠岃瘉鐮佷笉鑳戒负绌�', + icon: 'none' + }) + } + let fn = activeTab == 0 ? driverLogin : loginDriverByPhone + fn({ + ...form, + openid: this.$store.state.openId, + }).then(res => { + if (res.code === 200) { + this.setToken(res.data) + getUserInfo().then(ress => { + setTimeout(() => { + this.showToast('鐧诲綍鎴愬姛') + }) + uni.setStorageSync('ywinfo', this.ywinfo) + this.setDriverInfo(ress.data) + uni.redirectTo({ + url: "/pages/driver/index" + }) + }) + } + }) }, ...mapMutations(["setToken", "setDriverInfo"]), handleRegister() { uni.navigateTo({ url: "/pages/driver/register" }) - }, - tabsClick(val) { - this.activeTab = val - if(val == 0){ - this.form.username = this.form.username || this.form.phone - this.form.phone = null - this.form.code = null - }else{ - this.form.phone = this.form.username || this.form.phone - this.form.password = null - this.form.username = null - } }, - handleSetPsd() { - if(this.form.username || this.form.phone){ - uni.navigateTo({ - url: "/pages/driver/forgetPsd?phone=" + this.form.username || this.form.phone || '' - }) - }else{ - uni.navigateTo({ - url: "/pages/driver/forgetPsd" - }) + tabsClick(val) { + this.activeTab = val + if (val == 0) { + this.form.username = this.form.username || this.form.phone + this.form.phone = null + this.form.code = null + } else { + this.form.phone = this.form.username || this.form.phone + this.form.password = null + this.form.username = null } - + }, + handleSetPsd() { + if (this.form.username || this.form.phone) { + uni.navigateTo({ + url: "/pages/driver/forgetPsd?phone=" + this.form.username || this.form.phone || '' + }) + } else { + uni.navigateTo({ + url: "/pages/driver/forgetPsd" + }) + } + }, dealChange(e) { console.log(e) }, initCaptcha() { - if (!this.form.phone) return uni.showToast({ - title: '鎵嬫満鍙蜂笉鑳戒负绌�', - icon: 'none' - }) - sendSms({ phone: this.form.phone }).then(res => { - this.countDown = 60 - setInterval(() => { - if (this.countDown == 0) return - this.countDown-- - }, 1000) + if (!this.form.phone) return uni.showToast({ + title: '鎵嬫満鍙蜂笉鑳戒负绌�', + icon: 'none' + }) + sendSms({ + phone: this.form.phone + }).then(res => { + if (res.code === 200) { + this.countDown = 60 + setInterval(() => { + if (this.countDown == 0) return + this.countDown-- + }, 1000) + } }) }, } @@ -215,32 +219,37 @@ font-weight: 600; color: #333333; } - .tabs{ - display: flex; - align-items: center; - justify-content: space-evenly; - width: 530rpx; - margin: 48rpx auto 0rpx; - .tab{ - font-size: 30rpx; - color: #666666; - display: flex; - flex-direction: column; - align-items: center; - height: 52rpx; - line-height: 36rpx; - } - .active{ - font-weight: bold; - font-size: 34rpx; - color: #222222; - .bor{ - width: 80rpx; - height: 8rpx; - background: linear-gradient(to bottom, #4d99a8, #a3c8d4); - } - } + + .tabs { + display: flex; + align-items: center; + justify-content: space-evenly; + width: 530rpx; + margin: 48rpx auto 0rpx; + + .tab { + font-size: 30rpx; + color: #666666; + display: flex; + flex-direction: column; + align-items: center; + height: 52rpx; + line-height: 36rpx; + } + + .active { + font-weight: bold; + font-size: 34rpx; + color: #222222; + + .bor { + width: 80rpx; + height: 8rpx; + background: linear-gradient(to bottom, #4d99a8, #a3c8d4); + } + } } + .login_list { margin-top: 36rpx; width: 100%; @@ -270,7 +279,7 @@ } .captcha { - color: $uni-color-primary; + color: $uni-color-primary; font-size: 30rpx; } -- Gitblit v1.9.3