【发布时间】:2019-03-16 18:11:50
【问题描述】:
让我快速解释一下,当我从数据库中获取数据时,有一个父对象,里面有一个对象数组,我想要实现的是编写正确的路径,以便我可以访问特定的项目在数据库中。
接收数据时,我存储两个变量,如下所示:
for (let a in obj) {
list.push(obj[a]);
keys.push(a);
}
this.setState({
list: list,
keys: keys,
});
执行此代码将打印以下内容:
console.log(this.state.keys[index]);
HZlgUZ21vKbungnxaxDJXrTUr2z1
这总是返回确切的父对象id
但问题是我无法访问嵌套项的索引:
console.log(this.state.list[index]);
对象 {-LORYsI9mLP8mu_2BTKS:对象,-LORZVOq8SMUgTOPgpXK:对象, -LORZtqZeg3nyOW4p9I1:对象,-LOYbElg81jbPtao2nl4:对象}
我正在寻找的是嵌套项 ID 不是所有值
我附上了一张数据库的图片,这样你就可以看到它的样子
这是视图的最小表示:
const listItems = this.state.list.map((item, index) =>
Object.values(item).map(nestedItem => (
<div>
{nestedItem.title}
<button
onClick={() => this.update(index)}
>
CLICK
</button>
</div>
))
);
解决起来很容易,只是我还在学习编程的主要概念,但是这种嵌套对象总是让我感到沮丧。请有人来救我
【问题讨论】:
-
当您查看对象时,您是否有特定的密钥?查看一个对象很简单,但您需要知道自己在寻找什么,或者对所有东西都满意。
-
@zfrisch 在示例中提供我正在尝试做
this.state.list[index][3]但动态生成,这有意义吗?
标签: javascript reactjs ecmascript-6 jsx