Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

197
Vistas
No almacenar datos en reducer después de obtener datos de api

Estoy tratando de almacenar datos en mi tienda redux usando un reductor cuando obtenemos datos de la API B/E e intento almacenar datos en el reductor (tienda). Pero no funciona. Mi código es correcto para mí. Pero de alguna manera no está funcionando.

Mi tienda:-

 import createSagaMiddleware from 'redux-saga'; import { configureStore } from '@reduxjs/toolkit'; import rootReducer from './rootReducer'; import rootSaga from './rootsaga'; // saga middleware const sagaMiddleware = createSagaMiddleware(); // redux store const store = configureStore({ reducer: rootReducer, middleware: [sagaMiddleware], }); // run saga middleware sagaMiddleware.run(rootSaga); export default store;

Mi saga raíz: -

 import { all, takeEvery } from '@redux-saga/core/effects'; import * as categoryActionTypes from '../redux/types/categoryActionTypes'; import * as productActionTypes from '../redux/types/productActionTypes'; import { getAllStudents } from './sagas/categorySaga'; import { getAllProductWatcher } from './sagas/productSaga'; export default function* root() { yield all([ takeEvery(categoryActionTypes.GET_ALL_CATEGORY, getAllStudents), takeEvery(productActionTypes.GET_ALL_PRODUCT_ACTION, getAllProductWatcher), ]); }

Mi reductor: - (console.log () no funciona) Eso significa que no almacena datos en el reductor

 import * as actionTypes from '../types/productActionTypes'; const initialState = { product: [], isLoading: true, error: true, }; // reducer export default function productReducer(state = initialState, action) { switch (action.types) { case actionTypes.GET_ALL_PRODUCT_SUCCESS: console.log(action.data); return { ...state, product: action.data, isLoading: false, error: false, }; default: return state; } }

Este es mi método saga y así es como almaceno datos en mi reductor:-

 import { put } from '@redux-saga/core/effects'; import { GET_ALL_PRODUCT_SUCCESS } from '../types/productActionTypes'; import { createRequest } from '@utils/create-request'; export function* getAllProductWatcher(upload) { try { const Axios = yield createRequest(upload); const res = yield Axios.get('http://localhost:8080/product'); if (res) { **//Tying to store API data to my reducer** yield put({ type: GET_ALL_PRODUCT_SUCCESS, data: res.data, }); } } catch (e) { console.log(e); } }

Realmente necesito tu ayuda... Gracias.

about 4 years ago · Juan Pablo Isaza
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda