819527061@qq.com
2024-07-30 e52e720168541aa02e0326a505d251f42828aedf
pages/login/login.vue
@@ -10,7 +10,7 @@
            :disabled="btnLoading"
            :loading="btnLoading"
            type="primary"
            text="微信一键登录"></u-button>
            text="手机号一键登录"></u-button>
      </view>
      <!-- <view class="loginBtn">
         <u-button @click.stop="jumpBindBack"
@@ -18,7 +18,7 @@
            text="一键绑定测试"></u-button>
      </view> -->
      <view class="register"
         @click="registerClick"><text>注册</text></view>
         @click="PrivacyAgreementHandle" :loading="zhuceLoading"><text>注册</text></view>
      <view class="login-bottom-box">
         <view class="copyright">无人值守微信小程序</view>
         <view class="copyright">小程序仅供已拥有系统账号特定内部人员使用</view>
@@ -64,7 +64,7 @@
   import { apiLoginWx, apiLoginPassword } from '@/api/publicInterface.js';
   import { mapMutations } from 'vuex';
   import userPassword from './userPassword.vue';
   import { setToken, setRefreshToken, setUsernameKey, setCustomerId, redirectHome } from '@/utils/status.js';
   import { setToken, setRefreshToken, setUsernameKey, setCustomerId, redirectHome} from '@/utils/status.js';
   export default {
      data() {
         return {
@@ -73,7 +73,10 @@
            // 绑定微信模态框
            bindWxModelShow: false,
            bindWxModelTitle: '提示',
            bindWxContent: '如果已拥有系统账号,可以直接跳转绑定微信页面'
            bindWxContent: '如果已拥有系统账号,可以直接跳转绑定微信页面',
            appid: "",
            secret: "",
        zhuceLoading: false,  //注册
         };
      },
      components: {
@@ -81,9 +84,16 @@
      },
      methods: {
         ...mapMutations(['setUserTabbar', 'changeisLogin']),
         getAppidAndSercet() {
            this.$reqGet('getAppidAndSercet').then(res => {
               this.appid = res.data.appid;
               this.secret = res.data.secret
            })
         },
         // 访问wx.login,获取code
         beforeLoginEvent() {
            this.loginPopupShow = true;
            this.getAppidAndSercet();
         },
         wxLogin() {
            // 获取登录用户code
@@ -108,7 +118,7 @@
               title: '加载中...'
            });
            wx.request({
               url: `https://api.weixin.qq.com/sns/jscode2session?appid=wx4a62fc1684c429a9&secret=ee90afe376cdcec2fdd947c0a4db961a&js_code=${code}&grant_type=authorization_code`,
               url: `https://api.weixin.qq.com/sns/jscode2session?appid=${this.appid}&secret=${this.secret}&js_code=${code}&grant_type=authorization_code`,
               success(res) {
                  uni.setStorageSync('openid', res.data.openid);
                  // uni.showToast({
@@ -121,7 +131,6 @@
               apiLoginWx({ code: code }).then(res => {
                  if (res.code != 1) {
                     this.$u.toast('登录成功');
                     this.changeisLogin(true);
                     // 登陆成功,存储相关信息
                     setToken(res.access_token);
                     setRefreshToken(res.refresh_token);
@@ -131,12 +140,13 @@
                        this.setUserTabbar(res.data.type);
                        uni.setStorageSync('roleType', res.data.type);
                        setCustomerId(res.data.customerid);
                        setU
                        uni.hideLoading();
                        //跳转页面
                        this.$nextTick(() => {
                           redirectHome();
                        });
                     });
                     })
                  } else {
                     this.$u.toast(res.msg);
                     this.bindWxModelShow = true;
@@ -161,23 +171,25 @@
         openPopup() {
            console.log('打开了');
         },
         registerClick() {
         PrivacyAgreementHandle() {
        this.zhuceLoading = true
            uni.navigateTo({
               url: '/pages/register/register'
            });
         },
         // 此方法只进行绑定测试,后期通过扫码解决
         jumpBindBack() {
            uni.navigateTo({
               url: '/pages/bindBackground/bindBackground'
               url: '/pages/login/PrivacyAgreementText/PrivacyAgreementText'
            })
         }
        setTimeout(() => {
          this.zhuceLoading = false
        },1000)
         },
      }
   };
</script>
<style lang="scss">
   @import 'index.scss';
   .PrivacyAgreement {
      color: rgb(60, 156, 255)
   }
   .login {
      // height: 100vh;
@@ -309,4 +321,4 @@
         }
      }
   }
</style>
</style>