bugfix
This commit is contained in:
@@ -3,6 +3,11 @@ import * as auth from '../../utils/auth'
|
||||
import { UserInfo, QuotaItem } from '../../types/models'
|
||||
import { QuotaType, STORAGE_KEYS } from '../../utils/config'
|
||||
import { formatDate } from '../../utils/format'
|
||||
import { setTabBarSelected } from '../../utils/tabbar'
|
||||
import { logger } from '../../utils/logger'
|
||||
|
||||
// 日志模块名
|
||||
const LOG = 'profile'
|
||||
|
||||
function getZodiac(birthDay: number): string {
|
||||
if (!birthDay) return ''
|
||||
@@ -64,18 +69,18 @@ Page({
|
||||
},
|
||||
|
||||
syncTabBar() {
|
||||
const tabBar = (this as any).getTabBar && (this as any).getTabBar()
|
||||
// 红点由 tabBar 自身在登录态下同步,这里只更新选中态
|
||||
if (tabBar) tabBar.setData({ selected: 4 })
|
||||
setTabBarSelected(4)
|
||||
},
|
||||
|
||||
fetchUser() {
|
||||
request<UserInfo>({ url: '/user/info', showError: false })
|
||||
.then((user) => {
|
||||
logger.debug(LOG, '用户信息加载成功')
|
||||
wx.setStorageSync(STORAGE_KEYS.USER_INFO, user)
|
||||
this.setData({ userInfo: user, zodiac: getZodiac(user.birth_day) })
|
||||
})
|
||||
.catch(() => {})
|
||||
.catch((e: any) => logger.warn(LOG, '用户信息加载失败, code=', e && e.code))
|
||||
},
|
||||
|
||||
fetchQuota() {
|
||||
@@ -83,8 +88,9 @@ Page({
|
||||
.then((res) => {
|
||||
const upload = res.quotas.find((q) => q.quota_type === QuotaType.UPLOAD)
|
||||
if (upload) this.setData({ uploadRemain: upload.remain })
|
||||
logger.debug(LOG, '额度加载成功, 上传剩余=', upload ? upload.remain : 0)
|
||||
})
|
||||
.catch(() => {})
|
||||
.catch((e: any) => logger.warn(LOG, '额度加载失败(静默降级), code=', e && e.code))
|
||||
},
|
||||
|
||||
onEdit() {
|
||||
@@ -120,7 +126,7 @@ Page({
|
||||
wx.showActionSheet({
|
||||
itemList: ['男', '女'],
|
||||
success: (res) => this.setData({ 'editForm.sex': res.tapIndex + 1 }),
|
||||
fail: () => {}, // 取消选择属正常操作,不必抛错日志
|
||||
fail: (e) => logger.debug(LOG, '取消性别选择, err=', e && e.errMsg),
|
||||
})
|
||||
},
|
||||
|
||||
@@ -164,39 +170,65 @@ Page({
|
||||
}
|
||||
|
||||
this.setData({ saving: true })
|
||||
logger.debug(LOG, '提交资料变更, 字段=', Object.keys(body).join(','))
|
||||
request({ url: '/user/profile', method: 'PUT', data: body })
|
||||
.then(() => {
|
||||
logger.info(LOG, '资料保存成功')
|
||||
wx.showToast({ title: '已保存', icon: 'success' })
|
||||
finish()
|
||||
})
|
||||
.catch(() => this.setData({ avatarUploading: false, saving: false }))
|
||||
.catch((e: any) => {
|
||||
logger.warn(LOG, '资料保存失败, code=', e && e.code)
|
||||
this.setData({ avatarUploading: false, saving: false })
|
||||
})
|
||||
}
|
||||
|
||||
if (this.data.avatarChanged && avatar) {
|
||||
this.setData({ avatarUploading: true })
|
||||
uploadFile<{ avatar: string }>(avatar, 'file', '/user/avatar/upload')
|
||||
.then(() => saveProfile())
|
||||
.catch(() => this.setData({ avatarUploading: false, saving: false }))
|
||||
.then(() => {
|
||||
logger.info(LOG, '头像上传成功')
|
||||
saveProfile()
|
||||
})
|
||||
.catch((e: any) => {
|
||||
logger.warn(LOG, '头像上传失败, code=', e && e.code)
|
||||
this.setData({ avatarUploading: false, saving: false })
|
||||
})
|
||||
} else {
|
||||
saveProfile()
|
||||
}
|
||||
},
|
||||
|
||||
onTapMall() {
|
||||
wx.navigateTo({ url: '/pages/mall/mall' })
|
||||
wx.navigateTo({
|
||||
url: '/pages/mall/mall',
|
||||
fail: (e) => logger.warn(LOG, 'navigateTo 商城失败, err=', e && e.errMsg),
|
||||
})
|
||||
},
|
||||
onTapOrder() {
|
||||
wx.navigateTo({ url: '/pages/order/order' })
|
||||
wx.navigateTo({
|
||||
url: '/pages/order/order',
|
||||
fail: (e) => logger.warn(LOG, 'navigateTo 订单失败, err=', e && e.errMsg),
|
||||
})
|
||||
},
|
||||
onTapNotification() {
|
||||
wx.navigateTo({ url: '/pages/notification/notification' })
|
||||
wx.navigateTo({
|
||||
url: '/pages/notification/notification',
|
||||
fail: (e) => logger.warn(LOG, 'navigateTo 通知失败, err=', e && e.errMsg),
|
||||
})
|
||||
},
|
||||
onTapCollect() {
|
||||
wx.setStorageSync(STORAGE_KEYS.OPEN_COLLECT, 1)
|
||||
wx.switchTab({ url: '/pages/outfit/outfit' })
|
||||
wx.switchTab({
|
||||
url: '/pages/outfit/outfit',
|
||||
fail: (e) => logger.warn(LOG, 'switchTab 穿搭失败, err=', e && e.errMsg),
|
||||
})
|
||||
},
|
||||
onTapFlow() {
|
||||
wx.navigateTo({ url: '/pages/mall/mall?tab=flow' })
|
||||
wx.navigateTo({
|
||||
url: '/pages/mall/mall?tab=flow',
|
||||
fail: (e) => logger.warn(LOG, 'navigateTo 流水失败, err=', e && e.errMsg),
|
||||
})
|
||||
},
|
||||
onTapService() {
|
||||
wx.showToast({ title: '客服与反馈敬请期待', icon: 'none' })
|
||||
|
||||
Reference in New Issue
Block a user