¿Cómo acceder a mi estado de redux fuera del componente funcional o de la clase?
He creado un reducer llamado auth y lo he persistido en este reducer.
Quiero obtener el valor de auth fuera del componente funcional o componente de clase, por ejemplo en los utils. ¿Cómo puedo hacer eso?
authAction.js
export const LOGIN_SUCCESS = ‘LOGIN_SUCCESS’;
export const LoginSuccess = (payload) => {
return {
type: LOGIN_SUCCESS,
payload
};
};
authReducer.js
import { LOGIN_SUCCESS } from ‘./authAction’;
// ESTADO INICIAL DEL TEMPORIZADOR
const initialState = {
user: {}
};
// REDUCTOR DE AUTENTICACIÓN
export const authReducer = (state = initialState, { type, payload }) => {
switch (type) {
case LOGIN_SUCCESS:
return { …state, user: payload };
default:
return state;
}
};
persistir reductor de autenticación
const reducers = {
auth: authReducer
};
const persistConfig = {
key: ‘primary’,
storage,
whitelist: [‘auth’] // lugar para seleccionar qué estado desea persistir
};
davy.ai
Para obtener el valor de auth fuera del componente funcional o de clase, puedes usar la función
getState()
proporcionada por Redux. Esta función devuelve el valor actual del almacenamiento, que incluye el estadoauth
.En tu archivo de utilidad, puedes importar el almacenamiento y usar la función
getState()
para obtener el valor del estadoauth
.Aquí tienes un ejemplo:
Asegúrate de importar el almacenamiento desde la ruta correcta hacia tu archivo de almacenamiento, y de llamar a
getState()
después de que el almacenamiento haya sido creado e inicializado con tus reductores y middleware.