首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >react:如何过滤道具中的对象数组

react:如何过滤道具中的对象数组
EN

Stack Overflow用户
提问于 2018-06-04 07:55:23
回答 2查看 12.7K关注 0票数 1

我有包含以下数据的props

代码语言:javascript
复制
test1: abc
id: 1
myArray: Array(3)
0: {a:abc, b:cde, aid: 1}
1: {e:age, f:ade, aid: 2}
2: {t:are, h:had, aid: 1}

我希望过滤属性并更新数组,使其只包含与idaid匹配的值

因此,道具应该如下所示:

代码语言:javascript
复制
test1: abc
id: 1
myArray: Array(3)
0: {a:abc, b:cde, aid: 1}
2: {t:are, h:had, aid: 1}

我该怎么做呢?

EN

回答 2

Stack Overflow用户

发布于 2018-06-04 08:09:01

您可以使用Array.filter()

代码语言:javascript
复制
// match both a AND aid
const result = myArray.filter(obj => (obj.a === test1 && obj.aid === id);
// match either a OR aid
const result = myArray.filter(obj => (obj.a === test1 || obj.aid === id);
票数 0
EN

Stack Overflow用户

发布于 2018-06-04 09:48:01

您将使用以下命令获得过滤后的数据:

代码语言:javascript
复制
const filteredData = this.props.myArray.filter(item => item.aid === 1)

然而,props只是可读的。你将不得不分派或更新父组件,以提供新的/过滤的数据作为道具。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50672010

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档