76 lines
1.4 KiB
JavaScript
76 lines
1.4 KiB
JavaScript
/**
|
|
* 获取当前用户信息
|
|
*/
|
|
export function getCurrentUser() {
|
|
return {
|
|
id: uni.getStorageSync('userId') || '',
|
|
phone: uni.getStorageSync('userPhone') || '',
|
|
nickname: uni.getStorageSync('userNickname') || '',
|
|
username: uni.getStorageSync('username') || ''
|
|
};
|
|
}
|
|
|
|
/**
|
|
* 设置用户信息
|
|
*/
|
|
export function setUser(user) {
|
|
uni.setStorageSync('userId', user.id);
|
|
uni.setStorageSync('userPhone', user.phone);
|
|
uni.setStorageSync('userNickname', user.nickname);
|
|
uni.setStorageSync('username', user.username);
|
|
|
|
console.log('[InitUser] 设置用户:', user);
|
|
}
|
|
|
|
/**
|
|
* 清除用户信息
|
|
*/
|
|
export function clearUser() {
|
|
uni.removeStorageSync('userId');
|
|
uni.removeStorageSync('userPhone');
|
|
uni.removeStorageSync('userNickname');
|
|
uni.removeStorageSync('username');
|
|
uni.removeStorageSync('token');
|
|
|
|
console.log('[InitUser] 已清除用户信息');
|
|
}
|
|
|
|
/**
|
|
* 检查是否已登录
|
|
*/
|
|
export function isLoggedIn() {
|
|
const token = uni.getStorageSync('token');
|
|
const userId = uni.getStorageSync('userId');
|
|
return !!(token && userId);
|
|
}
|
|
|
|
/**
|
|
* 需要鉴权时调用,未登录则提示并跳转登录页
|
|
*/
|
|
export function ensureLoggedIn() {
|
|
if (isLoggedIn()) {
|
|
return true;
|
|
}
|
|
|
|
uni.showToast({
|
|
title: '请先登录',
|
|
icon: 'none'
|
|
});
|
|
|
|
setTimeout(() => {
|
|
uni.navigateTo({
|
|
url: '/pages/login/login'
|
|
});
|
|
}, 1200);
|
|
return false;
|
|
}
|
|
|
|
// 默认导出
|
|
export default {
|
|
getCurrentUser,
|
|
setUser,
|
|
clearUser,
|
|
isLoggedIn,
|
|
ensureLoggedIn
|
|
};
|