在React和Django中单击添加到购物车按钮时,数据未存储在购物车数组中

时间:2019-10-20 22:03:38

标签: django reactjs

我正在关注react和Django教程,单击add to cart按钮时我一直遇到问题。

当我在控制台

中进行测试时,会显示

数据数组和数据均未存储

enter image description here

操作中/cart.js


export const fetchCart = () => {
  return dispatch => {
    dispatch(cartStart());
    authAxios
      .get(orderSummaryURL)
      .then(res => {
        dispatch(cartSuccess(res.data));
      })
      .catch(err => {
        dispatch(cartFail(err));
      });
  };
};

Layout.js

const mapStateToProps = state => {
  return {
    authenticated: state.auth.token !== null,
    cart: state.cart.shoppingCart,
    loading: state.cart.loading
  };
};

const mapDispatchToProps = dispatch => {
  return {
    logout: () => dispatch(logout()),
    fetchCart: () => dispatch(fetchCart())
  };
};

export default withRouter(
  connect(
    mapStateToProps,
    mapDispatchToProps
  )(CustomLayout)
);

在ProductList.js中,

  handleAddToCart = slug => {
    this.setState({ loading: true });
    authAxios
      .post(addToCartURL, { slug })
      .then(res => {
        console.log(res.data);
        this.setState({ loading: false });
      })
      .catch(err => {
        this.setState({ error: err, loading: false });
      });
  };

ProductList.js 中的

AddToCart按钮,

<Button
   primary
   floated="right"
   onClick={() => this.handleAddToCart(item.slug)}
>
   Add to Cart
<Icon name="right shopping bag" />
</Button>

0 个答案:

没有答案