首页 > 解决方案 > 我可以将 redux 操作与 react 组件分开发送吗?

问题描述

我正在尝试在导出中调度 redux 操作以响应组件功能。可能吗?或者我应该怎么做而不是这个?

import { addToCart } from "../redux/actions/productActions";

export const checker = (item, cart) => dispatch => {
  let orderItem = {
    ...item
  };
  cart.filter(product => {
    if (product.productId === item.id) {
      orderItem = {
        id: item.id,
        quantity: product.quantity + item.quantity
      };
      dispatch(addToCart(orderItem));
    } else {
      dispatch(addToCart(orderItem));
    }
  });
};

标签: reactjsredux

解决方案


在 React/Redux 应用程序中,您不应该在 React 组件之外调度操作。React 组件只能通过mapDispatchToProps( https://react-redux.js.org/using-react-redux/connect-mapdispatch#providing-a-mapdispatchtoprops-parameter ) 或useDispatch( https://react-redux. js.org/next/api/hooks#usedispatch)。


推荐阅读