Skip to content
Snippets Groups Projects
Commit 69dd439b authored by Matthias Feyll's avatar Matthias Feyll :cookie:
Browse files

add redux listener

parent c37632e7
No related branches found
No related tags found
1 merge request!1005Draft: feature-ui-361_setup-project
import { useDispatch, useSelector } from "react-redux"
import { AppDispatch, RootState } from "./stores"
export const useAppDispatch = useDispatch.withTypes<AppDispatch>()
export const useAppSelector = useSelector.withTypes<RootState>()
\ No newline at end of file
...@@ -5,6 +5,7 @@ import persistStore from 'redux-persist/es/persistStore' ...@@ -5,6 +5,7 @@ import persistStore from 'redux-persist/es/persistStore'
import { emptySplitApi } from './api.store' import { emptySplitApi } from './api.store'
import { rtkQueryErrorLogger } from './middleware/devLogging.middleware' import { rtkQueryErrorLogger } from './middleware/devLogging.middleware'
import persistedReducer from './persist.store' import persistedReducer from './persist.store'
import { listenerMiddleware } from './middleware/listener.middleware'
export const store = configureStore({ export const store = configureStore({
...@@ -14,7 +15,7 @@ export const store = configureStore({ ...@@ -14,7 +15,7 @@ export const store = configureStore({
serializableCheck: { serializableCheck: {
ignoredActions: [FLUSH, REHYDRATE, PAUSE, PERSIST, PURGE, REGISTER], ignoredActions: [FLUSH, REHYDRATE, PAUSE, PERSIST, PURGE, REGISTER],
}, },
}).concat(emptySplitApi.middleware, rtkQueryErrorLogger), }).prepend(listenerMiddleware.middleware).concat(emptySplitApi.middleware, rtkQueryErrorLogger),
}) })
export const persistor = persistStore(store) export const persistor = persistStore(store)
......
import { createListenerMiddleware } from "@reduxjs/toolkit";
export const listenerMiddleware = createListenerMiddleware()
export const { startListening, stopListening } = listenerMiddleware
\ No newline at end of file
import { PayloadAction, createSlice } from '@reduxjs/toolkit'; import { PayloadAction, createSlice } from '@reduxjs/toolkit';
import { startListening } from '../middleware/listener.middleware';
import { useAuthServiceLoginMutation } from '@api/api';
export interface LoginFormFields { export interface LoginFormFields {
username?: string, username?: string,
...@@ -50,3 +52,13 @@ export const { setLoginBackendCheck } = loginSlice.actions ...@@ -50,3 +52,13 @@ export const { setLoginBackendCheck } = loginSlice.actions
export const { setLoginFormFields } = loginSlice.actions export const { setLoginFormFields } = loginSlice.actions
export default loginSlice.reducer export default loginSlice.reducer
startListening({
actionCreator: setLoginFormFields,
effect: async (action, listenerApi) => {
console.log('oh baby');
},
})
\ No newline at end of file
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment