reactjs - 材质 UI 多选复选框删除所选项目
问题描述
我有 2 个带有复选框的材质 ui 多选 fomrcontrol。这些是从 json 文件绑定的。一个用于列出州,另一个用于列出选定州的地区。选择工作正常,但我在取消选中复选框时遇到问题。
问题是,例如,当我选择州 GOA 和卡纳塔克邦时,这些州的相应地区将显示在 District formControl 中。我可以选择我选择的地区,说我选择了“北果阿”。如果我在状态下拉列表中取消选中“GOA”,我想清除我在“地区”下拉列表中选择的所有地区(即“北 GOA”需要删除)。
请帮我找到所需的输出
沙盒链接
解决方案
每当您取消选中一个选定的州时,您都需要过滤这些地区,并删除那些属于未选中状态的地区:
isDistrictInSelectedState = (district, statesSelected) => {
return statesSelected.find(selectedState => {
const districtsInState = StateDistrict.states.find(state => state.state === selectedState).districts;
return districtsInState.find(districtInState => districtInState === district);
})
}
handleChangeState = event => {
// console.log(event.target.value)
this.setState({
sp_StatesCovered: event.target.value,
sp_DistrictsCovered: this.state.sp_DistrictsCovered.filter(district => {
return this.isDistrictInSelectedState(district, event.target.value);
})
});
};
推荐阅读
- r - savehistory 命令在 R 4.02 中不起作用
- excel - 计算 Excel 公式中数组中出现的真值数量
- html - 内部 div 变得大于外部并超出浏览器边框,填充右侧不起作用
- vue.js - Vue Apollo“__typename”在 updateQuery 中未定义
- c# - Xamarin 表单发送图像
- java - 如何为我的 gui 使用具有不同布局的多个面板?
- python - 'Request' 对象在获取 api url 时没有属性 'get' 错误
- xml - 使用 xmlstarlet 搜索删除 XML 上的节点
- git - 我正在尝试 git push HEAD 但它显示错误:远程:找不到存储库
- domain-driven-design - 在 DDD 中,Commands 是否严格同步 API 调用?