Files
xiaozhi-esp32-server/main/manager-web/src/store/index.js
T

48 lines
935 B
JavaScript
Raw Normal View History

2025-03-05 23:13:24 +08:00
import Vue from 'vue'
import Vuex from 'vuex'
2025-03-14 23:48:59 +08:00
import Constant from '../utils/constant'
2025-03-05 23:13:24 +08:00
Vue.use(Vuex)
export default new Vuex.Store({
state: {
token: '',
userInfo: {} // 添加用户信息存储
2025-03-05 23:13:24 +08:00
},
getters: {
2025-03-14 23:48:59 +08:00
getToken(state) {
if (!state.token) {
state.token = localStorage.getItem('token')
}
return state.token
},
getUserInfo(state) {
return state.userInfo
2025-03-14 23:48:59 +08:00
}
2025-03-05 23:13:24 +08:00
},
mutations: {
2025-03-14 23:48:59 +08:00
setToken(state, token) {
state.token = token
localStorage.setItem('token', token)
},
setUserInfo(state, userInfo) {
state.userInfo = userInfo
},
clearAuth(state) {
state.token = ''
state.userInfo = {}
localStorage.removeItem('token')
2025-03-14 23:48:59 +08:00
}
2025-03-05 23:13:24 +08:00
},
actions: {
// 添加 logout action
logout({ commit }) {
return new Promise((resolve) => {
commit('clearAuth')
resolve()
})
}
2025-03-05 23:13:24 +08:00
},
modules: {
}
})