2026-04-18 17:16:49 +08:00
|
|
|
const app = getApp()
|
|
|
|
|
|
|
|
|
|
Page({
|
|
|
|
|
data: {
|
|
|
|
|
name: '',
|
|
|
|
|
days: 0,
|
|
|
|
|
badges: 0,
|
2026-04-19 10:04:00 +08:00
|
|
|
openid: '',
|
2026-04-18 17:16:49 +08:00
|
|
|
},
|
2026-04-19 10:04:00 +08:00
|
|
|
onShow() {
|
|
|
|
|
this.loadProfile()
|
|
|
|
|
},
|
|
|
|
|
loadProfile() {
|
|
|
|
|
wx.request({
|
|
|
|
|
url: `${app.globalData.baseUrl}/api/v1/auth/wx-login`,
|
|
|
|
|
method: 'POST',
|
|
|
|
|
data: { code: app.globalData.wxCode || 'dev-code' },
|
|
|
|
|
success: (res) => {
|
|
|
|
|
app.globalData.openid = res.data.openid
|
|
|
|
|
this.setData({ openid: res.data.openid, name: '考研搭子' })
|
|
|
|
|
},
|
|
|
|
|
})
|
|
|
|
|
wx.request({
|
|
|
|
|
url: `${app.globalData.baseUrl}/api/v1/achievements`,
|
|
|
|
|
header: { 'X-OpenID': app.globalData.openid || '' },
|
|
|
|
|
success: (res) => {
|
|
|
|
|
const badges = (res.data || []).filter((i) => i.is_unlocked).length
|
|
|
|
|
this.setData({ badges })
|
|
|
|
|
},
|
2026-04-18 17:16:49 +08:00
|
|
|
})
|
|
|
|
|
},
|
|
|
|
|
goTo(e) {
|
|
|
|
|
const { url } = e.currentTarget.dataset
|
|
|
|
|
wx.navigateTo({ url })
|
|
|
|
|
},
|
|
|
|
|
goHome() {
|
|
|
|
|
wx.switchTab({ url: '/pages/index/index' })
|
|
|
|
|
},
|
|
|
|
|
})
|