// pages/my/my.ts import { Login } from '../../api/login' import { getUserInfo } from '../../api/user' Page({ /** * 页面的初始数据 */ data: { avatar: 'https://4dkk.4dage.com/miniapp-source/daikan/avatar_default.png', nickname: 'HI,游客', }, /** * 生命周期函数--监听页面加载 */ onLoad() { }, /** * 生命周期函数--监听页面初次渲染完成 */ onReady() { const app = getApp(); app.watch('userInfo', this.updateUserInfo) app.watch('isLogin', this.updateLoginStatus) }, updateUserInfo(data?: any) { const app = getApp(); const updateUserInfo = app.globalData.userInfo const updateData = Object.assign({}, updateUserInfo, data) this.setData({ userInfo: updateData }) }, async updateLoginStatus(data: boolean) { console.log('my页面-isLogin', data) this.setData({ isLogin: data }) if (data) { await getUserInfo(); } }, /** * 生命周期函数--监听页面显示 */ async onShow() { this.getTabBar().init(); const app = getApp(); const isLogin = wx.getStorageSync('isLogin') app.setLogin(isLogin) this.updateUserInfo(); }, login() { const app = getApp(); wx.showLoading({ title: "登录中..." }) wx.login({ success: async function (res) { if (res.code) { const code = res.code const result = await Login(code) if (result.token) { app.setLogin(true) wx.hideLoading(); wx.setStorageSync('token', result.token) wx.setStorageSync('isLogin', true) wx.setStorageSync('wxUserId', result.wxUserId) } console.log('result', result) } } }); }, /** * 生命周期函数--监听页面隐藏 */ onHide() { }, /** * 生命周期函数--监听页面卸载 */ onUnload() { }, /** * 页面相关事件处理函数--监听用户下拉动作 */ onPullDownRefresh() { }, /** * 页面上拉触底事件的处理函数 */ onReachBottom() { }, /** * 用户点击右上角分享 */ onShareAppMessage() { }, handleToPersonalEdit() { wx.navigateTo({ url: "/pages/personal/personal" }) } })