【发布时间】:2021-12-27 19:45:33
【问题描述】:
我只是在 Vue.js 中做一个练习项目,我将循环浏览来自 NHL 的团队页面并输出每个球员的姓名。
我在这里有一个 API 端点; https://statsapi.web.nhl.com/api/v1/teams/21?expand=team.roster
我正在尝试穿越关卡,但在名册上“迷路”了。我可以输出整个花名册,但似乎无法深入挖掘。
我将整个 JSON 响应的内容存储在一个名为“hockeyData”的变量中。
这就是我用来输出花名册的东西(这可行)
{{ hockeyData[0].roster }}
现在,当我尝试获取玩家姓名时,我正在这样做,但它不起作用
{{ hockeyData[0].roster.roster[0].person.fullName }}
我确定这很简单,但尽我所能尝试我只是没有得到要输出的名称。
非常感谢任何帮助!
【问题讨论】:
-
你遇到了什么错误?
-
我收到一个控制台错误“TypeError: Cannot read properties of undefined (reading 'roster')”
-
只需添加逻辑语句
this.hockeyData && this.hockeyData[0].roster.roster[0].person.fullName或this.hockeyData[0]?.roster.roster[0].person.fullName即可解决TypeError。这是因为在创建组件时, hockeyData 可能没有数据(因此在您的情况下它为 null 或未定义)。