Javascript 无法解构属性

Javascript 无法解构属性,javascript,jquery,Javascript,Jquery,TypeError:无法对“未定义”或 “空”。 总共 您之所以会出现错误,是因为您没有将结果传递到displayCartTotal中,就像displayCartTotal(结果)您调用的displayCartTotal()没有参数,但它需要一个对象。请参见下面的注释行: constdisplaycarttotal=({results})=>{ }; 常量fetchBill=()=>{ 常数apiHost=https://randomapi.com/api'; 常量apiKey='006B08A

TypeError:无法对“未定义”或 “空”。 总共


您之所以会出现错误,是因为您没有将
结果
传递到
displayCartTotal
中,就像
displayCartTotal(结果)
您调用的
displayCartTotal()
没有参数,但它需要一个对象。请参见下面的注释行:

constdisplaycarttotal=({results})=>{
};
常量fetchBill=()=>{
常数apiHost=https://randomapi.com/api';
常量apiKey='006B08A801D82D0C9824DCFDFA3B3C';
常量apidendpoint=`${apiHost}/${apiKey}`;
获取(apiEndpoint)
。然后(响应=>{
返回response.json();
})
。然后(结果=>{
console.log(results.results)
displayCartTotal();//console.log(err));
};
您应该将结果作为如下参数传递:
displayCartTotal(results)


希望你能解决这个问题:)

你能更新这个问题吗?你的确切问题不太清楚,你发布的代码是breakingTry
console.log(results)
而不是
console.log(results.results)
你没有将任何参数传递给displayCartTotal()函数,并且您可能正在销毁该函数中的结果,这就是为什么会出现此类错误。在第二次解析中,请调用displayCartTotal(results),而不是displayCartTotal(),如果在调用displayCartTotal(results)之前检查结果是否包含results属性,以确保将来不会出现错误,那将非常好
 const displayCartTotal = ({results}) => {

  };

  const fetchBill = () => {
    const apiHost = 'https://randomapi.com/api';
    const apiKey = '006b08a801d82d0c9824dcfdfdfa3b3c';
    const apiEndpoint = `${apiHost}/${apiKey}`;

    fetch(apiEndpoint) 
    .then( response => {
        return response.json();
    })
    .then(results => {
        console.log(results.results)
        displayCartTotal();
     })
     .catch(err => console.log(err));
  };