【问题标题】:Reacr-Admin, OData: how to filter a list by nested dataReact-Admin,OData:如何按嵌套数据过滤列表
【发布时间】:2021-01-14 03:12:11
【问题描述】:

我收到以下数据:

[
  {
    userId:1,
    user: {
      id: 1,
      email: gmail1,
      personId: 55,
      person: {
        id: 55,
        firstName: "Adams"
      }
    }
  },
  {
    userId:2,
    user: {
      id: 2,
      email: gmail2,
      personId: 43, 
      person: {
        id: 43,
        firstName: "john"
      }
    }
  }
]

问题是由于这种设计,我无法通过 firstName 字段过滤数据。 您能否帮助正确过滤意味着 React-Admin

【问题讨论】:

  • 我相信这个answer是你需要的。

标签: javascript reactjs filter odata react-admin


【解决方案1】:

只需访问属性

const filtered = data.filter((d) => d.user.person.firstName === term)

const data = [
  {
    userId: 1,
    user: {
      id: 1,
      email: "gmail1",
      personId: 55,
      person: {
        id: 55,
        firstName: "Adams",
      },
    },
  },
  {
    userId: 2,
    user: {
      id: 2,
      email: "gmail2",
      personId: 43,
      person: {
        id: 43,
        firstName: "john",
      },
    },
  },
]

const term = "john"

const filtered = data.filter((d) => d.user.person.firstName === term)

console.log(filtered)

【讨论】:

  • 检查userperson 是否存在可能是一个好习惯。
猜你喜欢
  • 1970-01-01
  • 2022-11-01
  • 2022-01-18
  • 1970-01-01
  • 1970-01-01
  • 2023-02-11
  • 1970-01-01
  • 2019-03-22
  • 1970-01-01
相关资源
最近更新 更多