#reactjs #redux #react-redux
#reactjs #redux #react-redux
Вопрос:
Есть идеи, почему мой редуктор действует на действие.тип на основе его позиции в операторе switch? Я потратил много времени на отладку, а затем понял, что на самом деле проблема связана с позицией в операторе switch.
import {
FETCH_PRODUCTS_BEGIN,
FETCH_PRODUCTS_SUCCESS,
FETCH_PRODUCTS_ERROR,
CREATE_PRODUCT,
UPDATE_PRODUCT,
DELETE_PRODUCT,
} from "./inventoryTypes";
const initialState = {
loading: false,
products: [],
error: "",
};
const userInventoryReducer = (state = initialState, action) => {
switch (action.type) {
case FETCH_PRODUCTS_BEGIN:
return {
...state,
loading: true,
};
case FETCH_PRODUCTS_SUCCESS:
return {
loading: false,
products: action.payload,
error: "",
};
case FETCH_PRODUCTS_ERROR:
return {
loading: false,
products: [],
error: action.payload,
};
case DELETE_PRODUCT:
return {
...state,
products: state.products.filter(
(product) => product._id !== action.payload
),
};
case CREATE_PRODUCT:
console.log("your calling create!");
return {...state}
case UPDATE_PRODUCT:
console.log("calling update");
return { ...state };
default:
return state;
}
};
Комментарии:
1. Можете ли вы добавить файл «inventoryTypes»?
2. @Ar26 Да. Похоже, я скопировал переменную в inventoryTypes и забыл исправить значение. позор. теперь все исправлено
3. @Ar26 можете ли вы опубликовать ответ brother, чтобы мы могли закрыть этот поток?
Ответ №1:
Проверьте значения внутри вашего "./inventoryTypes"
файла, возможно, есть дублирование одних и тех же действий.
Ответ №2:
Это решено. Значение для моей CREATE_PRODUCT, UPDATE_PRODUCT
внутренней "./inventoryTypes"
части такое же!