react-native - 如何使用一个数组和两个反应原生选择器
问题描述
我想为两个选择器使用一个数据数组。如果一个选择器选择了一个选项,那么我需要从其他选择器中删除该选项。我从以下代码尝试了这个。我使用了长度为 2 的数组。
constructor(props) {
super(props);
this.state = {
startTown: 'Start Point',
endTown: 'End Point',
townList: null,
};
}
componentDidMount(){
firebase.database().ref('busRoutes').once("value",(snapshot)=>{
this.setState({townList:snapshot.val()})
})
}
<Box dir="row">
<Picker
style={{flex: 1}}
selectedValue={startTown}
onValueChange={(value) => {
this.setState({
startTown: value,
});
}}>
<Picker.Item value='Start Point' label='Start Point' />
{townList && townList.map((element,index)=>{
if(element===endTown) return;
return(<Picker.Item value={element} label={element} />)
})}
</Picker>
<Picker
style={{flex: 1}}
selectedValue={endTown}
onValueChange={(value) => {
this.setState({
endTown: value,
});
}}>
<Picker.Item value='End Point' label='End Point' />
{townList && townList.map((element,index)=>{
if(element===startTown) return;
return(<Picker.Item value={element} label={element} />)
})}
</Picker>
</Box>
但它给出了这样的错误
长度=2;索引=2
这是错误图像的链接。 https://imgur.com/ak3tvTB 我不能把它放在这里,因为我的声誉还不够
解决方案
推荐阅读
- c# - 需要将新的空白记录(行)插入现有的 DBF 文件(dbase III 格式)
- php - PHP SoapClient 返回状态 200 没有任何响应
- asp.net-core-mvc - 从表中获取选定列的列表数据
- node.js - 使用 node.js 发布 Docusign 的上线问题
- laravel - 在 Nginx 中找不到 Laravel 项目 404
- c++ - 有没有办法用二维数组(int)重载构造函数?
- powershell - 如何使用 Invoke-WebRequest 的 -OutFile 参数转义文件路径中的方括号
- r - 日期数学不会在 R 与 Redshift 中产生相同的结果
- reactjs - officejs 反应 - 我如何添加另一个页面?
- macos - 如何使用单个命令从 dmg 静默安装 MacOS .app?