如何比较两个表中是否存在数据,并在reactjs中设置检索到的数据的颜色

如何比较两个表中是否存在数据,并在reactjs中设置检索到的数据的颜色,reactjs,Reactjs,我有两个表,其中一个包含不同的作业(joblist),另一个是(savedjobs),它存储来自joblist的特定作业的副本。这有点像将作业添加到书签中以备日后使用 如果我在主屏幕中显示所有作业,我必须看到已保存的作业,并突出显示该作业已保存 我试着这样做: {joblists && joblists.map(joblist => { { resultJobs && resultJobs.map(job =>

我有两个表,其中一个包含不同的作业(
joblist
),另一个是(
savedjobs
),它存储来自
joblist
的特定作业的副本。这有点像将作业添加到书签中以备日后使用

如果我在主屏幕中显示所有作业,我必须看到已保存的作业,并突出显示该作业已保存

我试着这样做:

{joblists &&
  joblists.map(joblist => {
    {
      resultJobs &&
        resultJobs.map(job => {
          if (joblist.id === job.id)
            return (
              <i
                id="heart"
                name={joblist.id}
                className="fas fa-heart float-right pr-4 text-danger"
                onClick={this.saveJob1}
              />
            );
        });
    }
  })
}
{作业列表&&
joblists.map(joblist=>{
{
结果工作&&
resultJobs.map(作业=>{
if(joblist.id==job.id)
返回(
);
});
}
})
}

但是如果没有保存的工作呢?有人能帮忙吗?

你可以试试这样的方法:

{joblists &&
  joblists.map(joblist => {
    {
      resultJobs &&
        resultJobs.map(job => {
          if (joblist.id === job.id)
            return (
              <i
                id="heart"
                name={joblist.id}
                className="fas fa-heart float-right pr-4 text-danger"
                onClick={this.saveJob1}
              />
            );
        });
    }
  })
}

const jobList=['Job A','Job B','Job C','Job D','Job E']
const savedJobs=['Job C'、'Job D'、'Job E']
函数App(){
const resultJobs=jobList.map((作业,索引)=>
  • {job} {savedJobs.includes(作业)? --- : ''}
  • ); 返回(
      {resultJobs}
    ); }
    您可以尝试以下方法:

    {joblists &&
      joblists.map(joblist => {
        {
          resultJobs &&
            resultJobs.map(job => {
              if (joblist.id === job.id)
                return (
                  <i
                    id="heart"
                    name={joblist.id}
                    className="fas fa-heart float-right pr-4 text-danger"
                    onClick={this.saveJob1}
                  />
                );
            });
        }
      })
    }
    

    const jobList=['Job A','Job B','Job C','Job D','Job E']
    const savedJobs=['Job C'、'Job D'、'Job E']
    函数App(){
    const resultJobs=jobList.map((作业,索引)=>
    
  • {job} {savedJobs.includes(作业)? --- : ''}
  • ); 返回(
      {resultJobs}
    ); }
    不太清楚您想要实现什么。是否要渲染
    作业列表
    数组中的所有元素,但如果元素也存在于
    savedjobs
    数组中,则以某种方式高亮显示该元素?是的,如果数据存在于savedjobs表中,则我希望使用
    ,如果数据不存在,则
    无法理解为什么要映射两次。。您可以简单地遍历作业,并检查该作业是否也在保存的作业列表中。如果是,应用您的自定义样式您不太清楚您想要实现什么。是否要渲染
    作业列表
    数组中的所有元素,但如果元素也存在于
    savedjobs
    数组中,则以某种方式高亮显示该元素?是的,如果数据存在于savedjobs表中,则我希望使用
    ,如果数据不存在,则
    无法理解为什么要映射两次。。您可以简单地遍历作业,并检查该作业是否也在保存的作业列表中。如果是,请应用自定义样式