You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

React中Axios请求后使用可选链仍触发TypeError报错问题

解决Uncaught TypeError: Cannot read properties of undefined (reading '0')问题

你的问题出在两个核心点上:

  1. 可选链覆盖不完整
    你当前的代码是deliveredOrders?.delivered[0]?.updatedAt,这里可选链只作用到了delivered,但如果delivered本身是undefined(比如组件首次渲染、接口返回数据异常时),访问delivered[0]依然会触发报错。

    正确写法需要给数组索引也加上可选链:

    console.log(deliveredOrders?.delivered?.[0]?.updatedAt);
    
  2. 初始状态与接口返回结构不匹配
    你初始化deliveredOrders为数组[],但从代码逻辑来看,接口返回的res.data应该是一个包含delivered数组的对象(比如{ delivered: [...] })。初始状态设为数组会导致首次渲染时,deliveredOrders?.delivered直接是undefined(数组不存在delivered属性),这也是报错的诱因之一。

    应将初始状态改为空对象:

    const [deliveredOrders, setDeliveredOrders] = useState({});
    

最后建议你确认接口返回的res.data结构确实包含delivered数组,避免因后端数据不符合预期导致的后续问题。

内容的提问来源于stack exchange,提问作者zuZuu

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.20 12:24:47