Files
ctms-client/store/modules/user.js
fm453 c62d15b288 首次完整推送,
V:1.20240808.006
2024-08-13 18:32:37 +08:00

61 lines
1.9 KiB
JavaScript
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

// 上次启动时的用户信息
let userInfoHistory = uni.getStorageSync('userinfo') || {};
let state = {
//是否已经登录
hasLogin: Boolean(Object.keys(userInfoHistory).length), //Object.keys().length 判断对象长度,用以检测对象是否为空
//用户信息
info: userInfoHistory
},
getters = {
info(state) {
return state.info;
},
hasLogin(state) {
return state.hasLogin;
}
},
mutations = {
login(state, info) { //登录成功后的操作
//原有的结合传来的参数
let _info = state.info;
state.info = Object.assign({}, _info, info);
//设置为已经登录
state.hasLogin = true;
// console.log('state.info', state.info);
//存储最新的用户数据到本地持久化存储
uni.setStorageSync('userinfo', state.info);
if (info.token) {
uni.setStorage({
key: 'uni_id_token',
data: state.info.token,
complete(e) {
// console.log('setStorage-------',e);
}
});
uni.setStorageSync('uni_id_token_expired', state.info.tokenExpired)
}
},
logout(state) {
state.info = {};
state.hasLogin = false;
uni.setStorageSync('userinfo', {});
uni.removeStorageSync('uni_id_token');
uni.setStorageSync('uni_id_token_expired', 0)
}
},
actions = {
logout(context) {
uni.showLoading({
mask: true
})
}
}
export default {
namespaced: true,
state,
getters,
mutations,
//同步执行触发用store.commit
actions
//异步执行触发用store.dispatch
}