Reactjs 映射或/和筛选以选择React中的元素

Reactjs 映射或/和筛选以选择React中的元素,reactjs,dictionary,filter,Reactjs,Dictionary,Filter,我的代码运行得很好。几乎是这样,因为我需要获取所有呈现在Joe中的对象,但根据qoute.fields.user/qoute.fields.company中的第一个,我会得到两个或一个。 这是我的数据,看起来像这样: { id:1; user: joe; company: foo }, { id:2; user: foo; company: joe }, { id:3; user: joe; company: foo2 } user === qoute.fields.com

我的代码运行得很好。几乎是这样,因为我需要获取所有呈现在Joe中的对象,但根据qoute.fields.user/qoute.fields.company中的第一个,我会得到两个或一个。 这是我的数据,看起来像这样:

{
 id:1;
 user: joe;
 company: foo
},
{
 id:2;
 user: foo;
 company: joe
},
{
 id:3;
 user: joe;
 company: foo2
}
 user === qoute.fields.company && qoute.fields.user ? 
如果我运行这个部分

const user = "joe";

const qoutes = this.state.qoutes.map((qoute, i) => 
user === qoute.fields.user && qoute.fields.company ? 
<ListItem id={i} key={i} qoute={qoute} />
: null)

我有身份证:2

我应该怎么做才能获得这三个id。(id:1,id:2,id:3)所有这些对象都有Joe。
我知道这可能是一个简单的解决办法,但我被它卡住了)有什么建议吗

您在伪代码中所做的是:

if user = 'joe' and company is not null (return 1,3)

if company = 'joe' and user is not null (return 2)
测试用户和公司,并将它们与或结合起来,而不是与和结合起来:

const qoutes = this.state.qoutes.map((qoute, i) => 
user === qoute.fields.user || user === qoute.fields.company ? 
<ListItem id={i} key={i} qoute={qoute} />
: null)
const qoutes=this.state.qoutes.map((qoute,i)=>
用户===qoute.fields.user | |用户===qoute.fields.company?
:null)
我知道这很容易)谢谢!