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

路由传参获取的user对象为何打印username为undefined?

问题原因及解决办法

从你打印的日志能明显看出来:user其实是一个数组,不是单个对象(日志里的内容被[]包裹着)。

你直接用user.username访问,相当于在数组实例上查找username属性——数组本身没有这个属性,自然返回undefined。而直接打印数组时,控制台会展开显示数组里的元素,所以你能看到里面的用户对象和username属性。

解决方式

  • 如果你预期传过来的是单个用户对象:检查跳转路由时的传参代码,是不是不小心把用户对象放进数组里传递了(比如写成了navigate('/xxx', { params: { user: [userObj] } }),应该改成navigate('/xxx', { params: { user: userObj } }))。
  • 如果确实是要传递用户列表(数组):那就通过数组索引访问对应元素的属性,比如取第一个用户的username:
    console.log(user[0].username)
    

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.04 08:25:27