arrays - React Complex Array,如何提取值?
问题描述
我是一个新手,我希望不要问什么傻事,但我正在疯狂地寻找解决方案!
对于我的应用程序,我使用的是公共 API
,我需要的部分是这个(短版本,因为它很大)
{
"artists": [
{
"name": "Artist 1",
"id": 1
},
{
"name": "Artist 2",
"id": 2
},
{
"name": "Artist 3",
"id": 3
},
{
"name": "Artist 4",
"id": 4
}
]
}
渲染:
render() {
const {
name,
id
} = this.props.record;
功能:
[artistsArray].forEach(item => {
console.log(item);
console.log(item.artists[0].name);
});
输出:
return (
<Fragment>
<div className="container">
<h1 className="display-3">
{name} {id}
</h1>
</Fragment>
);
}
问题是我无法获取名称和 ID。
console.log(item); console.log(item.artists[0].name);
给我错误或未定义。我能怎么做?
看起来很简单,但我可以摆脱这个。
提前感谢您的帮助!
解决方案
这里发生了很多事情!
这是我将如何完成您正在尝试做的事情的示例:
const artists = [
{
"name": "Artist 1",
"id": 1
},
{
"name": "Artist 2",
"id": 2
},
{
"name": "Artist 3",
"id": 3
},
{
"name": "Artist 4",
"id": 4
}
]
render() {
return (
<div>
{
artists.map((artist, artistIndex) => {
return (
<div key={artistIndex} className="container">
<h1 className="display-3">
{artist.name} {artist.id}
</h1>
</div>
)
})
}
</div>
)
}
您似乎混淆了几种不同的语法,如果我是您,我会回到React 文档并仔细查看
推荐阅读
- python - Pandas: overlay a column into row with a blank one
- java - Log4j2 使用 rollingFileAppender (Java) 自定义文件路径
- spring-boot - 如何使用控制器的 protobuf 进行 Java 单元测试?
- mysql - 为什么我无法将此数据框上传到 MySQL Workbench 中的表中?
- discord.py - 不和谐改变了什么吗?
- html - 溢出自动在移动设备上不起作用
- javascript - 重新加载页面时抛出错误 401,我使用的是 Angular 5
- c# - 横向输入二维数组
- reactjs - 调用信息后api数据返回0(React)
- excel - 需要比较两个excel列,然后从第三列返回值