Browse Source

小程序:个人中心

panyong 2 years ago
parent
commit
831d81b211

+ 31 - 14
htmldev/wxMini/pages/mine/mine.js

@@ -1,5 +1,6 @@
 const uploadJS = require('../../mixin/upload.js')
 const { updateUserInfo, userLoginOut } = require('../../api/common')
+const { sessionStorageKey } = require('../../api/request')
 const app = getApp()
 
 Page({
@@ -18,7 +19,8 @@ Page({
     isAutoFocus: false,
     booNickname: false,
     booLogout: false,
-    booLock: false
+    booLock: false,
+    sessionId: ''
   },
 
   /**
@@ -43,6 +45,10 @@ Page({
    */
   onShow() {
     this.getTabBar().init()
+
+    this.setData({
+      sessionId: wx.getStorageSync(sessionStorageKey)
+    })
   },
 
   /**
@@ -61,22 +67,33 @@ Page({
   async init() {
     // 更新用户信息
     app.fetchUserDataCallback = () => {
+      const userInfo = app.globalData.userInfo
       const { user_head_img_url, user_nickname, user_phone } = app.globalData.userInfo
+      let temp = {}
 
-      this.setData({
-        form: {
-          user_head_img_url,
-          user_nickname,
-          user_phone
-        },
-        user_head_img_url: [
-          {
-            url: user_head_img_url,
-            formkey: 'user_head_img_url'
+      for (let key in userInfo) {
+        let value = userInfo[key]
+
+        if ((Array.isArray(value) && value.length >= 1) || (Object.prototype.toString.call(value) === '[object Object]') || (typeof value === 'string' && value) || typeof value === 'number') {
+          if (this.data.hasOwnProperty(key)) {
+            if (key === 'user_head_img_url') {
+              value = [
+                {
+                  url: value,
+                  formkey: key
+                }
+              ]
+            }
+            temp[`${key}`] = value
           }
-        ],
-        user_nickname: user_nickname
-      })
+
+          if (this.data.form.hasOwnProperty(key)) {
+            temp[`form.${key}`] = value
+          }
+        }
+      }
+
+      this.setData(temp)
     }
     await app.fetchUserData()
   },

+ 0 - 11
htmldev/wxMini/pages/mine/mine.scss

@@ -139,17 +139,6 @@
   }
 }
 
-button.logout[type="primary"] {
-  width: 627rpx;
-  height: 80rpx;
-  margin: 40rpx auto 0;
-  border-radius: 40rpx;
-  background-color: rgba(145, 179, 121, 1);
-  font-size: 36rpx;
-  font-weight: 500;
-  color: rgba(255, 255, 255, 1);
-}
-
 .van-uploader__preview,
 .van-uploader__upload {
   margin: 0 !important;

+ 7 - 5
htmldev/wxMini/pages/mine/mine.wxml

@@ -86,12 +86,14 @@
       <image class="label" src=""></image>
       <text class="value">客服电话</text>
     </view>
+    <view
+      class="list"
+      bind:tap="showLogout"
+      wx:if="{{sessionId}}">
+      <image class="label" src=""></image>
+      <text class="value">退出</text>
+    </view>
   </view>
-  <button
-    class="logout"
-    type="primary"
-    bind:tap="showLogout">退出当前账号
-  </button>
 </view>
   <!--自定义tabbar页面被遮挡-->
 <view style="padding-bottom:25%;"></view>