无法解构属性,因为它是未定义的错误

时间:2020-10-19 05:28:29

标签: reactjs shopping-cart drawer state-management context-api

创建一个onClick事件以打开购物车抽屉,并收到错误“无法重新构造属性'shoppingCartOpen'的'值',因为它是未定义的”。我该如何解决?

const ButtonAppBar = ({value}) => {
  const { shoppingCartOpen } = value
  let shoppingCartDrawer;
  if (this.state.shoppingCartOpen) {
    shoppingCartDrawer = <ShoppingCartDrawer />;
  }

1 个答案:

答案 0 :(得分:1)

该错误不是您发布的代码片段中的内容,而是您如何调用它的。您期望value是具有属性shoppingCartOpen的对象,因此如果valueundefined,则此行是一个问题:const { shoppingCartOpen } = value。 / p>

您可以将value默认设置为空对象以抑制错误

const ButtonAppBar = ({value = {}}) =>

但是请确保在调用时实际上将正确的value传递给道具!看起来应该像这样:

<ButtonAppBar value={someObject} />