From 3fc70951bbd386c8c85e522cae80deba8823052e Mon Sep 17 00:00:00 2001 From: zhangwei <1504152376@qq.com> Date: 星期四, 15 八月 2024 17:28:20 +0800 Subject: [PATCH] 登录 --- src/pages/login/index.vue | 410 ++++++++------------------------------------------------- 1 files changed, 62 insertions(+), 348 deletions(-) diff --git a/src/pages/login/index.vue b/src/pages/login/index.vue index 576f13c..624bae4 100644 --- a/src/pages/login/index.vue +++ b/src/pages/login/index.vue @@ -7,8 +7,9 @@ </view> <view class="login_btn"> <!-- #ifdef MP-WEIXIN || MP-QQ || MP-BAIDU --> - <!-- <button v-if="canIUseGetUserProfile" type="primary" class="uni-tip-button" @click="login">鎺堟潈骞剁櫥褰�</button> --> - <button type="primary" open-type="getUserInfo" @getuserinfo="login" + <button v-if="canIUseGetPhoneNumber" type="primary" class="uni-tip-button" + @click="mobileAuthLogin">鎺堟潈骞剁櫥褰�</button> + <button type="primary" v-else open-type="getPhoneNumber" @getphonenumber="getPhoneNumber" class="uni-tip-button">鎺堟潈骞剁櫥褰�</button> <view class="no_login" @click="back"> 鏆備笉鎺堟潈 @@ -25,36 +26,8 @@ </view> </checkbox-group> </view> - <!-- <view class="mobile_login" @click="toMobileLogin"> - 鍚屾剰骞惰緭鍏ユ墜鏈哄彿鐧诲綍 - </view> --> - <!-- <view class="agreement_wrap"> - <view class="agree_item"> - <view class="item_icon" @click="isChecked = !isChecked"> - <image v-if="!isChecked" :src="$util.img('upload/img/iconCheck.png')" mode="aspectFit" - class="item_select_img"></image> - <image v-else :src="$util.img('upload/img/publish-selected.png')" mode="aspectFit" - class="item_select_img"></image> - </view> - <view class="item_content"> - 棣栨鐧诲綍鑷姩娉ㄥ唽杩愭弧婊″強璐ц溅甯处鍙凤紝涓斿凡闃呰骞跺悓鎰�<text class="agreement">銆婄敤鎴锋湇鍔″崗璁��</text><text - class="agreement">銆婁釜浜轰俊鎭繚鎶ゆ斂绛栥��</text><text class="agreement">銆婅处鍙峰叧鑱斿崗璁��</text> - </view> - </view> - <view class="agree_item"> - <view class="item_icon" @click="isCheckedSan = !isCheckedSan"> - <image v-if="!isCheckedSan" :src="$util.img('upload/img/iconCheck.png')" mode="aspectFit" - class="item_select_img"></image> - <image v-else :src="$util.img('upload/img/publish-selected.png')" mode="aspectFit" - class="item_select_img"></image> - </view> - <view class="item_content"> - 宸查槄璇诲苟鍚屾剰<text class="agreement">銆婄涓夋柟鍚堜綔娓呭崟銆�</text> - </view> - </view> - </view> --> </view> - <u-popup ref="popup" type="center"> + <uni-popup ref="popup" type="center"> <view class="bind-wrap"> <!-- #ifdef MP-WEIXIN || MP-QQ || MP-BAIDU --> <view class="heard">鎻愮ず</view> @@ -66,8 +39,8 @@ @getphonenumber="mobileAuthLogin"><text>鐐瑰嚮缁戝畾鎵嬫満鍙风爜</text></button> --> <!-- #endif --> </view> - </u-popup> - <u-popup ref="bindMobile"> + </uni-popup> + <uni-popup ref="bindMobile"> <view class="bind-wrap"> <!-- #ifdef MP-WEIXIN || MP-QQ || MP-BAIDU --> <view class="heard">鎻愮ず</view> @@ -76,7 +49,7 @@ @getphonenumber="mobileAuthLogin"><text>鐐瑰嚮缁戝畾鎵嬫満鍙风爜</text></button> <!-- #endif --> </view> - </u-popup> + </uni-popup> </view> </template> @@ -86,12 +59,12 @@ return { isChecked: false, isCheckedSan: false, - canIUseGetUserProfile: false + canIUseGetPhoneNumber: false }; }, created() { // #ifdef MP-WEIXIN - if (wx.getUserProfile) this.canIUseGetUserProfile = true; + if (uni.getStorageSync('queryPhoneNumber')) this.canIUseGetPhoneNumber = true; // #endif }, onShow() { @@ -134,7 +107,7 @@ } else { uni.setStorageSync( 'is_perfect_user', res.code - ) + ) } }, fail: res => { @@ -197,122 +170,70 @@ back() { uni.navigateBack() }, - toMobileLogin() { - if (!this.isChecked) { - return this.$util.showToast({ - title: "璇峰厛鍚屾剰鍗忚" + getPhoneNumber(e) { + if (e.detail.errMsg == 'getPhoneNumber:ok') { + this.$db.set('queryPhoneNumber', 'getPhoneNumber:ok'); + uni.login({ + provider: 'weixin', + timeout: 3000, + success: res => { + let obj = { + bindgetphonenumber: e.detail.code, + jsCode: res.code + } + this.$api.CreateUser(obj).then(result => { + if (result.code == 1) { + this.$db.set('userToken', result.data.accessToken); + this.$util.redirectTo( + '/pages/index/index', {}, + 'tabbar') + } else { + this.$util.showToast({ + title: result.msg + }); + } + }).catch((err) => { + console.log(err, 'uni.loginerr') + }) + }, }) } - this.$util.redirectTo('/otherPages/member/mobileLogin/mobileLogin') + console.log(e) }, mobileAuthLogin(e) { - console.log(e) if (!this.isChecked) { - return this.$util.showToast({ + return this.$common.showToast({ title: "璇峰厛鍚屾剰鍗忚" }) } - // return - if (e.detail.errMsg == 'getPhoneNumber:ok') { - let authData = uni.getStorageSync('authInfo'); - console.log(authData) - var data = { - code: e.detail.code, - uid: authData.id - // iv: e.detail.iv, - // encryptedData: e.detail.encryptedData - }; - console.log(e) - // if (Object.keys(authData).length) { - // Object.assign(data, authData); - // } - // if (authData.avatarUrl) data.headimg = authData.avatarUrl; - // if (authData.nickName) data.nickname = authData.nickName; - // if (uni.getStorageSync('source_member')) data.source_member = uni.getStorageSync('source_member'); - if (this.isSub) return; - this.isSub = true; - - this.$api.temLogin({ - data, - success: res => { - if (res.code == 1) { - console.log(res) - - if (res.data.wx_openid) { - this.$util.showToast({ - title: "鐧诲綍鎴愬姛", - icon: "success" - }) - uni.setStorage({ - key: 'uid', - data: res.data.id, - success: () => { - uni.removeStorageSync('wx_openid_set'); - uni.removeStorageSync('source_member'); - uni.removeStorageSync('authInfo'); - this.$api.temLogin({ - data: { - uid: res.data.id, - }, - success: res => { - if (res.code == 1) { - console.log(res) - uni.setStorageSync( - 'is_perfect_user', '1') - } else { - uni.setStorageSync( - 'is_perfect_user', res - .code) - } - }, - fail: res => { - this.$util.showToast({ - title: "鎺ュ彛閿欒" - }); - } - }); - // this.$store.dispatch('getCartNumber'); - setTimeout(() => { - this.$util.redirectTo( - '/pages/index/index', {}, - 'tabbar') - }, 1000) - } - }); - } else { - this.$refs.bindMobile.close() - // uni.setStorageSync('wx_openid_set',1) - this.$refs.popup.open() - } - - // this.$store.commit('setToken', res.data.token); - // this.$refs.bindMobile.close(); - // if (res.data.is_register && this.$refs.registerReward.getReward()) { - // this.$refs.registerReward.open(); - // } + uni.login({ + provider: 'weixin', + timeout: 3000, + success: res => { + this.$api.temLogin(res.code).then((result) => { + if (result.code == 1) { + this.$db.set('userToken', result.data.accessToken); + this.$util.redirectTo( + '/pages/index/index', {}, + 'tabbar') } else { - this.isSub = false; this.$util.showToast({ - title: res.msg + title: result.msg }); } - }, - fail: res => { - this.isSub = false; - this.$util.showToast({ - title: 'request:fail' - }); - } - }); - } + }).catch((err) => { + console.log('err', err); + }) + }, + }) }, getCode(userInfo, callback) { uni.login({ provider: 'weixin', timeout: 3000, success: res => { - console.log(res) + console.log(res, 'getCode') let data = { code: res.code, nickname: userInfo.nickName, @@ -339,219 +260,11 @@ title: "璇峰厛鍚屾剰鍗忚" }) } - // if (!this.isChecked || !this.isCheckedSan) { - // this.$util.showToast({ - // title: "璇峰嬀閫夌敤鎴锋敞鍐�/鐧诲綍鍗忚鍜岀涓夋柟鍚堜綔娓呭崟" - // }) - // return - // } - // #ifdef MP-WEIXIN - if (this.canIUseGetUserProfile) { - wx.getUserProfile({ - desc: '鑾峰彇鐢ㄦ埛涓汉淇℃伅', // 澹版槑鑾峰彇鐢ㄦ埛涓汉淇℃伅鍚庣殑鐢ㄩ�旓紝鍚庣画浼氬睍绀哄湪寮圭獥涓紝璇疯皑鎱庡~鍐� - success: (res) => { - console.log(res) - if (res.errMsg == 'getUserProfile:ok') { - - // this.authInfo.nickName = res.userInfo.nickName; - // this.authInfo.avatarUrl = res.userInfo.avatarUrl; - // uni.setStorageSync('authInfo', this.authInfo) - - this.getCode(res.userInfo, data => { - console.log(data) - if (data.code == 1) { - uni.setStorageSync('authInfo', data.data) - if (!data.data.mobile) { - this.$refs.bindMobile.open() - } else { - if (data.data.wx_openid) { - this.$util.showToast({ - title: "鐧诲綍鎴愬姛", - icon: "success" - }) - uni.setStorage({ - key: 'uid', - data: data.data.id, - success: () => { - uni.removeStorageSync( - 'wx_openid_set'); - uni.removeStorageSync( - 'source_member'); - uni.removeStorageSync('authInfo'); - this.$api.temLogin({ - data: { - uid: data.data.id, - }, - success: res => { - if (res.code == - 1) { - console - .log( - res - ) - uni.setStorageSync( - 'is_perfect_user', - '1' - ) - } else { - uni.setStorageSync( - 'is_perfect_user', - res - .code - ) - } - }, - fail: res => { - this.$util - .showToast({ - title: "鎺ュ彛閿欒" - }); - } - }); - // this.$store.dispatch('getCartNumber'); - setTimeout(() => { - this.$util.redirectTo( - '/pages/index/index', {}, - 'tabbar') - }, 1000) - } - }); - } else { - // uni.setStorageSync('wx_openid_set',1) - this.$refs.popup.open() - } - - - } - } - return - // if (data) { - // this.authLogin(data); - // } else { - // this.$refs.auth.close(); - // this.toLogin(); - // } - }); - } - } - }) - } else if (e.detail.errMsg == 'getUserInfo:ok') { - this.getCode(data => { - if (data.code == 1) { - uni.setStorageSync('authInfo', data.data) - if (!data.data.mobile) { - this.$refs.bindMobile.open() - } else { - if (data.data.wx_openid) { - this.$util.showToast({ - title: "鐧诲綍鎴愬姛", - icon: "success" - }) - uni.setStorage({ - key: 'uid', - data: data.data.id, - success: () => { - uni.removeStorageSync('wx_openid_set'); - uni.removeStorageSync('source_member'); - uni.removeStorageSync('authInfo'); - this.$api.temLogin({ - data: { - uid: data.data.id, - }, - success: res => { - if (res.code == 1) { - console.log(res) - uni.setStorageSync( - 'is_perfect_user', '1') - } else { - uni.setStorageSync( - 'is_perfect_user', res.code - ) - } - }, - fail: res => { - this.$util.showToast({ - title: "鎺ュ彛閿欒" - }); - } - }); - // this.$store.dispatch('getCartNumber'); - setTimeout(() => { - this.$util.redirectTo( - '/pages/index/index', {}, - 'tabbar') - }, 1000) - } - }); - } else { - // uni.setStorageSync('wx_openid_set',1) - this.$refs.popup.open() - } - - - } - } - }); - } - // #endif - // if (!uni.getStorageSync('wx_openid_set')) { - // // #ifdef MP-QQ || MP-BAIDU - // if (e.detail.errMsg == 'getUserInfo:ok') { - // this.getCode(data => { - // if (data) { - // this.authLogin(data); - // } else { - // this.$refs.auth.close(); - // this.toLogin(); - // } - // }); - // } - // // #endif - - // // #ifdef MP-WEIXIN - // if (this.canIUseGetUserProfile) { - // wx.getUserProfile({ - // desc: '鑾峰彇鐢ㄦ埛涓汉淇℃伅', // 澹版槑鑾峰彇鐢ㄦ埛涓汉淇℃伅鍚庣殑鐢ㄩ�旓紝鍚庣画浼氬睍绀哄湪寮圭獥涓紝璇疯皑鎱庡~鍐� - // success: (res) => { - // if (res.errMsg == 'getUserProfile:ok') { - - // // this.authInfo.nickName = res.userInfo.nickName; - // // this.authInfo.avatarUrl = res.userInfo.avatarUrl; - // // uni.setStorageSync('authInfo', this.authInfo) - - // this.getCode(data => { - // console.log(data) - // return - // if (data) { - // this.authLogin(data); - // } else { - // this.$refs.auth.close(); - // this.toLogin(); - // } - // }); - // } - // } - // }) - // } else if (e.detail.errMsg == 'getUserInfo:ok') { - // this.getCode(data => { - // if (data) { - // this.authLogin(data); - // } else { - // this.$refs.auth.close(); - // this.toLogin(); - // } - // }); - // } - // // #endif - - // // #ifndef MP - // this.$refs.auth.close(); - // this.toLogin(); - // // #endif - // } else { - // this.$refs.auth.close(); - // this.toLogin(); - // } + uni.login({ + provider: 'weixin', + timeout: 3000, + success: res => {}, + }) }, } } @@ -601,6 +314,7 @@ line-height: 70rpx; background-color: #35A6FF; border-radius: 70rpx; + padding: 0; } .no_login { @@ -718,4 +432,4 @@ color: #ffffff; background-color: #35A6FF; } -</style> +</style> \ No newline at end of file -- Gitblit v1.9.1