css
litian
2024-04-12 75c63ae6c5cb34c777c9fb3b375379952f7995b4
packagePersonal/pages/userSetting/index.js
@@ -10,7 +10,7 @@
  data: {
    userInfo: {},
    defaultAvatarUrl: 'https://cdn-we-retail.ym.tencent.com/miniapp/usercenter/icon-user-center-avatar@2x.png',
    userInfoBox: false,
    editType: '',
    userInfoForm: {
      icon: '',
@@ -24,6 +24,8 @@
    emailError: false,
    imgCode: '',
    countDown: 0,
    userInfoBox: false,
    height: '', //屏幕高度
  },
  /**
@@ -46,7 +48,15 @@
   * 生命周期函数--监听页面显示
   */
  onShow() {
    var that = this;
    // 动态获取屏幕高度
    wx.getSystemInfo({
      success: (result) => {
        that.setData({
          height: result.windowHeight
        });
      },
    })
  },
  // 获取登录用户身份
  getUserInfo() {
@@ -75,8 +85,8 @@
        } else if (WeChatInfo) {
          defaultUser = {
            ...WeChatInfo,
            nickName: nickNameData ? JSON.parse(nickNameData.data).nickName : WeChatInfo.name,
            icon: JSON.parse(nickNameData.data).icon ? JSON.parse(nickNameData.data).icon : WeChatInfo.icon,
            nickName: nickNameData && JSON.parse(nickNameData.data).nickName ? JSON.parse(nickNameData.data).nickName : WeChatInfo.name,
            icon: nickNameData && JSON.parse(nickNameData.data).icon ? JSON.parse(nickNameData.data).icon : WeChatInfo.icon,
            userId: res.userId,
            phoneNumber: phoneInfo?.credential,
            Email: emailInfo?.credential
@@ -107,7 +117,7 @@
        editType: info,
        "userInfoForm.captcha": "",
        "userInfoForm.code": "",
        "userInfoForm.nickName": ''
        "userInfoForm.nickName": this.data.userInfo.nickName,
      });
    }
    this.getImgCapcha()
@@ -231,9 +241,11 @@
      if (emailError === isPhoneNumber) {
        this.setData({
          emailError: !isPhoneNumber,
          "userInfoForm.email": e.detail.value,
        });
      }
      this.setData({
        "userInfoForm.email": e.detail.value,
      });
    } else {
      this.setData({
        emailError: false,
@@ -299,14 +311,14 @@
  getSecond(time) {
    let timer = null
    if (!timer) {
      let countDown = time;
      this.setData({
        countDown: time,
      });
      let conut = this.data.countDown;
      timer = setInterval(() => {
        countDown--
        conut--
        this.setData({
          countDown: countDown,
          countDown: conut,
        });
        if (this.data.countDow == 0) {
          clearInterval(timer)
@@ -331,8 +343,6 @@
              icon: 'none',
              duration: 1000
            })
            // 开启短信验证倒计时
            this.getSecond(60)
          } else {
            wx.showToast({
              title: '邮箱验证码发送失败',
@@ -353,6 +363,14 @@
  confirmInfo() {
    if (this.data.editType == 'nickName') {
      if (!this.data.userInfoForm.nickName) {
        wx.showToast({
          title: '请输入昵称',
          icon: 'none',
          duration: 1000
        })
        return false;
      }
      let userTypeInfo = {
        "requests": [{
          data: JSON.stringify({
@@ -378,6 +396,22 @@
      })
    } else if (this.data.editType == 'phone') {
      if (!this.data.userInfoForm.phone) {
        wx.showToast({
          title: '请输入手机号',
          icon: 'none',
          duration: 1000
        })
        return false;
      }
      if (!this.data.userInfoForm.code) {
        wx.showToast({
          title: '请输入验证码',
          icon: 'none',
          duration: 1000
        })
        return false;
      }
      let query = {
        phoneNumber: this.data.userInfoForm.phone,
        phoneCaptcha: this.data.userInfoForm.code
@@ -409,6 +443,22 @@
        }
      })
    } else if (this.data.editType == 'email') {
      if (!this.data.userInfoForm.email) {
        wx.showToast({
          title: '请输入邮箱',
          icon: 'none',
          duration: 1000
        })
        return false;
      }
      if (!this.data.userInfoForm.code) {
        wx.showToast({
          title: '请输入验证码',
          icon: 'none',
          duration: 1000
        })
        return false;
      }
      let query = {
        eMail: this.data.userInfoForm.email,
        captcha: this.data.userInfoForm.code