javascript - React/JS 数组表现不同
问题描述
我正在尝试通过从 get 请求中读取 json 信息来设置数组。下面我对其进行硬编码以进行测试,它似乎在下拉按钮中打印列表。但是在我的 fetch json 请求中,如果我从teamList 打印,它似乎不起作用,如果我从团队(硬编码)打印,它会起作用。
这是我的控制台输出,我还注意到它们在第一行看起来有点不同,即使它们都是相同的确切数组。这里有什么问题吗?
let teamsList = []
fetch(`/api/teams`)
.then(res => res.json())
.then(responseJSON => {
responseJSON.map(cls => (
teamsList.push(cls.name)
))
})
let test = ['Chaos', 'High Elves', 'Orcs']
console.log(teamsList)
console.log(test)
// doesnt work
return (
<DropdownButton id="dropdown-team-button" title={this.props.team_name}>
{teamsList.map(cls => (
<div key={cls}>
<Dropdown.Item onClick={this.handleTeamSelection} title={cls}>{cls}</Dropdown.Item>
</div>
))}
</DropdownButton>
)
// works
return (
<DropdownButton id="dropdown-team-button" title={this.props.team_name}>
{test.map(cls => (
<div key={cls}>
<Dropdown.Item onClick={this.handleTeamSelection} title={cls}>{cls}</Dropdown.Item>
</div>
))}
</DropdownButton>
)
解决方案
推荐阅读
- javascript - 如何确定所选文本是否在 HTML 文本节点中的花括号内
- go - 用于谷歌云存储的 Golang SDK:分段下载
- javascript - 如何使用 tronweb 获取 tronlink 中的当前活动帐户?
- html - 仅在订购时显示标签
- jquery - PrependTo 函数没有有效地工作?
- dynamics-crm - 转发的电子邮件与同一案例相关联,而不是创建新案例
- php - Laravel - 将数组转换为雄辩的集合
- mule - IF 语句转换成另一个 IF 语句 DW 2.0
- python-3.x - 从 one2Many 关系创建记录时隐藏相关的 Many2One 字段
- bash - 在字符串中删除字符/插入字符