44 lines
1.3 KiB
TypeScript
44 lines
1.3 KiB
TypeScript
import { calcAge } from '../../utils/idCard/index'
|
|
import type { UserInfo } from '../../api/index'
|
|
|
|
// pages/personalInformation/personalInformation.ts
|
|
Page({
|
|
data: {
|
|
userInfo: null as {
|
|
avatar: string
|
|
name: string
|
|
idCard: string
|
|
gender: string
|
|
age: string
|
|
secondDepart: string
|
|
thirdDepart: string
|
|
height: string
|
|
weight: string
|
|
} | null,
|
|
},
|
|
|
|
onShow() {
|
|
this._loadUserInfo()
|
|
},
|
|
|
|
// 从缓存回显用户信息
|
|
_loadUserInfo() {
|
|
const raw = wx.getStorageSync('userInfo') as UserInfo | null
|
|
if (!raw?.userId) return
|
|
const age = calcAge(raw.birthday)
|
|
this.setData({
|
|
userInfo: {
|
|
avatar: raw.realname?.[0] ?? '',
|
|
name: raw.realname ?? '-',
|
|
idCard: raw.idCard ?? '-',
|
|
gender: raw.sex_dictText || (raw.sex === 1 ? '男' : raw.sex === 2 ? '女' : '-'),
|
|
age: age ? `${age}岁` : '-',
|
|
secondDepart: raw.secondDepart || '-',
|
|
thirdDepart: raw.thirdDepart || '-',
|
|
height: raw.height ? `${raw.height}cm` : '-',
|
|
weight: raw.weight ? `${raw.weight}kg` : '-',
|
|
},
|
|
})
|
|
},
|
|
})
|