如何在反应原生中过滤多个选择下拉字段中的数组值

Posted

技术标签:

【中文标题】如何在反应原生中过滤多个选择下拉字段中的数组值【英文标题】:How to filter array value in multiple Select drop down field in react native 【发布时间】:2019-12-12 14:08:25 【问题描述】:

假设下面的数组值我有一个 lgas 数组。下面有 3 个选择字段,Lga、州和国家。我必须在 lga 字段中获取下拉值。如果我在 lga 下拉列表中选择任何值,则相同元素中的值应自动出现在州和国家/地区下拉列表中。

例如。如果我在 lga 中选择代码 BNG,那么国家印度应该在国家下拉列表中,并且应该显示州中的卡纳塔克邦值。请帮忙。

 // Array Value  
      masterData:
        lga: Array(1)
        0:
        code: "BNG"
        name: "BANGALORE"
        state:
        code: "KA"
        name: "KARNATAKA"
        __typename: "TroubleTicketMasterCode"
        __proto__: Object
       country:
        code: "IND"
        name: "INDIA"
        __typename: "TroubleTicketMasterCode"
        __proto__: Object 
        __typename: "Lga"
        1:
        code: "1234"
        name: "Mangalore"
        state:
        code: "700"
        name: "PARIS"
        __typename: "TroubleTicketMasterCode"
        __proto__: Object
       country:
        code: "NG"
        name: "NIGERIA"
        __typename: "TroubleTicketMasterCode"
        __proto__: Object
        __typename: "Lga"

    // Select field 

                        <SelectField
                            label="Lga"
                            node="lga"
                            options=lga
                            value=
                            onChange=this.lgachanges
                            that=this
                            setIcon=true

                          />

                          <SelectField
                            label="State"
                            options=
                            value=
                            node="state"
                            onChange=
                            that=this
                            setIcon=true

                          />

                          <SelectField
                            label="Country"
                            options=
                            value=
                            node="country"
                            onChange=
                            that=this
                            setIcon=true

                          />

谢谢

【问题讨论】:

How to use a 'checkbox' to update present address to same as permanent address的可能重复 【参考方案1】:
lgachanges = event => 
  const temp = lga.find(element =>  element.code === event.target.value)

  this.setState(
    lga: temp.name,
    country: temp.country.name,
    state: temp.state.name,
  )

在每个选择中:

 value=this.state. ... //lga, country, state   

【讨论】:

感谢@Danski,感谢您的时间和帮助,我想在 Lga 字段中选择 lga,并根据该国家和州应该自动过滤并来.. 我有这个会工作

以上是关于如何在反应原生中过滤多个选择下拉字段中的数组值的主要内容,如果未能解决你的问题,请参考以下文章

如何创建多个从同一个数组中获取值的动态下拉列表,而无需更改 Javascript 中的其他下拉列表

如何在反应原生中过滤FlatList中的项目

如何根据我在多个下拉列表中选择的内容创建过滤器?

使用Django的html中的多个下拉菜单过滤器

在 Bigquery 中,如何使用标准 Sql 过滤 Struct 数组以匹配 Struct 中的多个字段?

从 React 中的同一个选择下拉表单字段中获取多个值