首页 > 解决方案 > 'TypeError: 为购物车创建函数时无法读取未定义的属性'长度'。这是代码片段。可能是什么问题?

问题描述

import useStyles from './styles';

const Cart = ({ cart }) => {
    const classes = useStyles();

    const isEmpty = !cart.line_items.length;

    const EmptyCart = () => (
        <Typography variant="subtitle1">There are no items in your cart</Typography>
    );

标签: reactjs

解决方案


'TypeError: Cannot read property 'length' of undefined' 表示您正在尝试访问未定义值的长度属性

所以在你的代码中

const isEmpty = !cart.line_items.length;

这是错误的来源。该cart.line_items值未定义。您可以通过使用 javascript 链接操作符来避免此错误,即。const isEmpty = !cart.line_items?.length;

这将cart.line_items仅在其具有某些值且未定义的情况下检查长度属性。


推荐阅读