【发布时间】:2017-10-24 01:26:00
【问题描述】:
我正在做一个 Vue 项目,我只是 Vue JS 的新手,我的问题是当我输入一个值时如何返回所有 ID 为 1 的数据。下面是我的数据的示例结构。
{
'A': [{
1: [{
id: 1,
name: 'John'
}],
2: [{
id: 5,
name: 'Ken'
}]
}],
'B': [{
1: {
id: 1,
name: 'Leena'
}
}],
'C': [{
1: [{
id: 1,
name: 'Jesica'
}],
2: [{
id: 18,
name: 'Mike'
}]
}]
}
预期的结果应该是(如下),因为它们都具有相同的 id 值
{
'A': [{
1: [{
id: 1,
name: 'John'
}]
}],
'B': [{
1: {
id: 1,
name: 'Leena'
}
}],
'C': [{
1: [{
id: 1,
name: 'Jesica'
}]
}]
}
【问题讨论】:
-
这是一个奇怪的数据结构。每个对象属性是否总是包含一个只包含一个对象的数组?
-
不,这只是一个例子,只要输入值等于我要搜索的字段值,它就可以返回多个数组
-
因此,假设您的对象名为“foo”。您的意思是
foo['A'][0][1]可能是一个包含许多对象的数组,并且您希望在过滤后的数组中返回任何带有id==1的对象? -
正是@thanksd,这是我在我的应用程序上尝试做的事情jsbin.com/dezokiwowu/edit?html,js,console,output
-
您只需要按对象属性名称过滤对象数组吗?这就是您的应用中的样子,它不使用这种疯狂的数据结构。
标签: javascript arrays multidimensional-array vue.js frontend