遇到两个孩子使用相同的键“[对象对象]”



>我收到以下错误:遇到两个孩子使用相同的钥匙,[object Object]

我有以下数组称为城市:

[
{ 'city' : `AIRDRIE`, 'province' : 'AB' }, 
{ 'city' : `ALBERTA BEACH`, 'province' : 'AB' }, 
{ 'city' : `ATHABASCA`, 'province' : 'AB' }, 
{ 'city' : `BANFF`, 'province' : 'AB' }, 
{ 'city' : `BARRHEAD`, 'province' : 'AB' }, 
{ 'city' : `BEAUMONT`, 'province' : 'AB' }, 
{ 'city' : `BLACKFALDS`, 'province' : 'AB' },
... 
]

现在我想过滤数组:

const optionsCity = cities.filter(( {province} ) => {
  return province === this.state.province
})

在我尝试打开下拉菜单之前,它工作正常。我收到错误:遇到两个孩子使用相同的钥匙,[object Object]

我的下拉菜单是反应下拉菜单,这是代码:

<Dropdown 
    options={optionsCity} 
    onChange={this.updateCity.bind(this)} 
    value={this.state.city} 
    placeholder="Select a City" /> 

这是我的更新城市

  updateCity(city) {
    this.setState({city: city.name})
  }

有人知道如何解决吗?对不起,我的英语很差

谢谢!!

基于 https://github.com/fraserxu/react-dropdown,如果您使用的是选项的对象数组,则需要它采用带有键的特定格式 - "值"和"标签">

{ value: 'one', label: 'One' }

筛选器返回对象数组,而不仅仅是城市名称数组。您需要使用上述键创建一个新的对象数组,或者只使用城市名称的平面数组

最新更新