fix: revoke local token when profile query failed

This commit is contained in:
Paul Pan 2024-03-16 17:23:33 +08:00
parent cd858cd602
commit ac8e3ab972
2 changed files with 7 additions and 5 deletions

View File

@ -3,13 +3,10 @@ import { combineSlices, configureStore } from "@reduxjs/toolkit";
import { setupListeners } from "@reduxjs/toolkit/query";
import { userApi } from "./services/user";
import { counterSlice } from "../features/counter/counterSlice";
import { quotesApiSlice } from "../features/quotes/quotesApiSlice";
import { authSlice } from "../features/auth/authSlice";
const dataSlices = [counterSlice, authSlice];
const middlewareSlices = [quotesApiSlice, userApi];
const dataSlices = [authSlice];
const middlewareSlices = [userApi];
const slices = [...dataSlices, ...middlewareSlices];
const rootReducer = combineSlices(...slices);

View File

@ -42,6 +42,11 @@ export const authSlice = createAppSlice({
console.error("Login Failed", action.payload);
localStorage.removeItem("token");
return { ...initialState, token: null };
})
.addMatcher(userApi.endpoints.profile.matchRejected, (_state, _action) => {
// Profile Failed
localStorage.removeItem("token");
return { ...initialState, token: null };
});
},
});