You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
shop-app/common/store/index.js

66 lines
1.4 KiB

3 years ago
/*
* @Author: ch
* @Date: 2022-03-22 18:28:52
* @LastEditors: ch
2 years ago
<<<<<<< HEAD
* @LastEditTime: 2022-04-29 14:03:32
=======
2 years ago
* @LastEditTime: 2022-04-28 23:03:06
2 years ago
>>>>>>> feature/1.0.0_im_ch
3 years ago
* @Description: file content
*/
import Vue from 'vue'
import Vuex from 'vuex';
Vue.use(Vuex);
const
// token
TOKEN = 'tk',
// 用户信息
USER_INFO = 'ui',
// 地址列表
2 years ago
ADDRESS = 'ads',
// oppenId
OPPED_ID = 'oi';
3 years ago
export default new Vuex.Store({
state : {
token : uni.getStorageSync(TOKEN) || '',
userInfo : JSON.parse(uni.getStorageSync(USER_INFO) || '{}'),
2 years ago
address : JSON.parse(uni.getStorageSync(ADDRESS) || '[]'),
sessionData : [],
2 years ago
sessionMsgCount : 0,
2 years ago
sessionMsgId : '',
2 years ago
openId : uni.getStorageSync(OPPED_ID) || ''
3 years ago
},
mutations:{
SET_TOKEN (state, token = ''){
state.token = token;
uni.setStorageSync(TOKEN, token);
},
SET_USER_INFO (state, userInfo = {}){
state.userInfo = userInfo;
uni.setStorageSync(USER_INFO, JSON.stringify(userInfo));
3 years ago
},
SET_ADDRESS (state, address = []){
state.address = address;
uni.setStorageSync(ADDRESS, JSON.stringify(address));
2 years ago
},
SET_SESSION_DATA (state, data){
state.sessionData = data ;
},
SET_SESSION_MSG_COUNT (state, data){
state.sessionMsgCount = data;
2 years ago
},
SET_OPEN_ID (state, data){
state.openId = data;
2 years ago
uni.setStorageSync(OPPED_ID, data);
2 years ago
},
2 years ago
SET_SESSION_MSG_ID (state, data){
state.sessionMsgId = data;
}
2 years ago
},
actions : {
3 years ago
}
})