antd 中的下拉框多选组件
这个是父组件引用
此处重点用到了key
下面是对应弹窗子组件
componentDidMount() {
this.loadData();//获取下拉框中的所有值
const { editObj = {}, dataList,wardCode} = this.state;这个是获取父组件传递过来的当前下拉框选择值的id数组
let {patIndexNoList}= this.state;
if(this.props.editObj.bindedPatientMap){
patIndexNoList=this.props.editObj.bindedPatientMap[wardCode];
this.setState({patIndexNoList});
}
}
下面是组件的展示
<Form.Item label=“病区患者” hasFeedback>
{dataList.map((item, index) => {
return (
{item.patientName}
);
})}
</Form.Item>
重点注意的是 value={patIndexNoList} 这个是id数组。
handleChange = val => {
this.setState({ patIndexNoList: val })
};
中心解决思路:获取到后端返回的id之后就把他设置到state.patIndexNoList,然后select的value就设置成patIndexNoList,然后onchange的时候修改patIndexNoList
注意
你获取到后端返回的id之后就把他设置到state.patIndexNoList,然后select的value就设置成patIndexNoList,然后onchange的时候修改patIndexNoList