This commit is contained in:
@@ -190,6 +190,14 @@ export default {
|
||||
if (result.register) {
|
||||
// 已注册 → 存 token → 进入开门页
|
||||
uni.setStorageSync('token', result.token);
|
||||
// 存储 user_info(接口返回的字段,后续 snsapi_userinfo 授权可补充)
|
||||
const existing = uni.getStorageSync('user_info') || {};
|
||||
uni.setStorageSync('user_info', {
|
||||
user_id: result.user_id || existing.user_id || '',
|
||||
phone: result.phone || existing.phone || '',
|
||||
nickname: result.nickname || existing.nickname || '',
|
||||
avatar: result.avatar || existing.avatar || '',
|
||||
});
|
||||
this.goToHome();
|
||||
} else {
|
||||
// 未注册 → 存 temp_token → 跳注册页
|
||||
@@ -303,11 +311,14 @@ export default {
|
||||
|
||||
if (data.code === 0 && data.data) {
|
||||
const userInfo = data.data;
|
||||
// 存入缓存
|
||||
// 合并已有缓存(保留 user_id 等字段),覆盖头像昵称手机
|
||||
const existing = uni.getStorageSync('user_info') || {};
|
||||
uni.setStorageSync('user_info', {
|
||||
nickname: userInfo.nickname || '',
|
||||
avatar: userInfo.avatar || '',
|
||||
phone: userInfo.phone || '',
|
||||
...existing,
|
||||
user_id: userInfo.user_id || existing.user_id || '',
|
||||
nickname: userInfo.nickname || existing.nickname || '',
|
||||
avatar: userInfo.avatar || existing.avatar || '',
|
||||
phone: userInfo.phone || existing.phone || '',
|
||||
});
|
||||
} else {
|
||||
console.warn('[loading] 获取用户信息失败:', data.message);
|
||||
@@ -369,13 +380,21 @@ export default {
|
||||
async mockLogin() {
|
||||
const mode = config.mockWechatLogin;
|
||||
const mock = config.mockUser;
|
||||
const mockOpenid = mock.user_info.open_id;
|
||||
const mockUserInfo = mock.user_info;
|
||||
const mockOpenid = mockUserInfo.open_id;
|
||||
|
||||
// 'skip' 模式直接登录,不调接口
|
||||
if (mode === 'skip') {
|
||||
this.statusText = '模拟登录中...';
|
||||
uni.setStorageSync('token', mock.token);
|
||||
uni.setStorageSync('openid', mockOpenid);
|
||||
// 按生产结构存储 user_info
|
||||
uni.setStorageSync('user_info', {
|
||||
user_id: mockUserInfo.user_id,
|
||||
phone: mockUserInfo.phone,
|
||||
nickname: mockUserInfo.nickname,
|
||||
avatar: mockUserInfo.avatar,
|
||||
});
|
||||
console.log('[Auth] Mock skip → home');
|
||||
setTimeout(() => this.goToHome(), 500);
|
||||
return;
|
||||
@@ -401,8 +420,15 @@ export default {
|
||||
uni.setStorageSync('openid', result.openid || mockOpenid);
|
||||
|
||||
if (result.register) {
|
||||
// 已注册 → 存 token → 跳首页
|
||||
// 已注册 → 存 token + user_info → 跳首页
|
||||
uni.setStorageSync('token', result.token);
|
||||
// 按生产结构存储 user_info(接口返回优先,mock 补充)
|
||||
uni.setStorageSync('user_info', {
|
||||
user_id: result.user_id || mockUserInfo.user_id,
|
||||
phone: result.phone || mockUserInfo.phone,
|
||||
nickname: result.nickname || mockUserInfo.nickname,
|
||||
avatar: result.avatar || mockUserInfo.avatar,
|
||||
});
|
||||
console.log('[Auth] Mock: existing user → home');
|
||||
this.goToHome();
|
||||
} else {
|
||||
|
||||
Reference in New Issue
Block a user