mirror of
https://github.com/jxxghp/MoviePilot-Frontend.git
synced 2026-07-11 23:42:41 +08:00
fix store
This commit is contained in:
50
src/store/auth.ts
Normal file
50
src/store/auth.ts
Normal file
@@ -0,0 +1,50 @@
|
||||
import { Module } from 'vuex';
|
||||
|
||||
// 定义状态类型
|
||||
interface AuthState {
|
||||
token: string | null;
|
||||
remember: boolean;
|
||||
}
|
||||
|
||||
// 定义根状态类型
|
||||
interface RootState {
|
||||
auth: AuthState;
|
||||
}
|
||||
|
||||
|
||||
// 导出模块
|
||||
const authModule: Module<AuthState, RootState> = {
|
||||
namespaced: true,
|
||||
state: {
|
||||
token: null,
|
||||
remember: false,
|
||||
},
|
||||
mutations: {
|
||||
setToken(state, token: string) {
|
||||
state.token = token;
|
||||
},
|
||||
clearToken(state) {
|
||||
state.token = null;
|
||||
},
|
||||
setRemember(state, remember: boolean) {
|
||||
state.remember = remember;
|
||||
},
|
||||
},
|
||||
actions: {
|
||||
updateToken({ commit }, token: string) {
|
||||
commit('setToken', token);
|
||||
},
|
||||
clearToken({ commit },) {
|
||||
commit('clearToken');
|
||||
},
|
||||
updateRemember({ commit }, remember: boolean) {
|
||||
commit('setRemember', remember);
|
||||
},
|
||||
},
|
||||
getters: {
|
||||
getToken: state => state.token,
|
||||
getRemember: state => state.remember,
|
||||
}
|
||||
};
|
||||
|
||||
export default authModule;
|
||||
@@ -1,52 +1,12 @@
|
||||
import { ActionTree, GetterTree, MutationTree, createStore } from 'vuex';
|
||||
import { createStore } from 'vuex';
|
||||
import createPersistedState from 'vuex-persistedstate';
|
||||
|
||||
interface State {
|
||||
// 登录token
|
||||
token: string | null;
|
||||
// 是否记住登录状态
|
||||
remember: boolean;
|
||||
}
|
||||
|
||||
const state: State = {
|
||||
token: null,
|
||||
remember: false,
|
||||
};
|
||||
|
||||
const mutations: MutationTree<State> = {
|
||||
setToken(state, token: string) {
|
||||
state.token = token;
|
||||
},
|
||||
clearToken(state) {
|
||||
state.token = null;
|
||||
},
|
||||
setRemember(state, remember: boolean) {
|
||||
state.remember = remember;
|
||||
},
|
||||
};
|
||||
|
||||
const actions: ActionTree<State, any> = {
|
||||
updateToken({ commit }, token: string) {
|
||||
commit('setToken', token);
|
||||
},
|
||||
clearToken({ commit },) {
|
||||
commit('clearToken');
|
||||
},
|
||||
updateRemember({ commit }, remember: boolean) {
|
||||
commit('setRemember', remember);
|
||||
},
|
||||
};
|
||||
|
||||
const getters: GetterTree<State, any> = {
|
||||
getToken: state => state.token,
|
||||
getRemember: state => state.remember,
|
||||
};
|
||||
import authModule from './auth';
|
||||
|
||||
const store = createStore({
|
||||
state,
|
||||
mutations,
|
||||
actions,
|
||||
getters,
|
||||
modules: {
|
||||
// 用户认证store
|
||||
auth: authModule,
|
||||
},
|
||||
plugins: [
|
||||
createPersistedState({
|
||||
// 配置持久化存储的选项
|
||||
|
||||
Reference in New Issue
Block a user