Просто думайте о сборщике как о визуальном представлении.Никакие значения не сохраняются в средстве выбора, поэтому вы не можете извлечь из него элементы.
Вместо этого вам нужно сохранить выбранное значение в вашем состоянии:
Так что для ваших мест приема пищивы можете сделать:
selectedValue={this.state.selectedPlace}
onValueChange={ value => this.setState({ selectedPlace: value })}>
И для вашего меню вы можете сделать:
selectedValue={this.state.selectedMenu}
onValueChange={ value => this.setState({ selectedMenu: value })}>
Теперь в вашем коде вы можете ссылаться на эти значения как this.state.selectedPlace
и this.state.selectedMenu
и отвечать насоответственно.
Самый простой способ реализовать это - создать объект с ключами, равными ключам названий ваших ресторанов, например,
const menus = {
"Taco Bell": ["Enchilada", "Fiesta Fries", "Burrito with fries"]
}
Пока эти имена свойствсопоставив значения, переданные вашему селектору точно , вы можете сделать что-то подобное для своего второго средства выбора:
render(){
const { selectedPlace, selectedMenu } = this.state
return (
<Your Picker Coder .... >
<Picker
//your props>
{menus[this.state.selectedPlace].map(menu => <Picker.Item ... />)}
</Picker>
)
}
Надеюсь, это поможет!