【发布时间】:2019-07-18 04:31:02
【问题描述】:
我在表单上有一个选择组件。我试图结合其中的搜索功能。我已经对组件进行了 onchange,它与我想要的匹配,但我很困惑与当前数据进行比较,以便运行此搜索功能
这是我的代码
const searchChange = (data) => {
search_value = []
let new_data = _.cloneDeep(dataOpt)
let keyword = _.isString(data) ? data : null
let fixed_data = _.isEmpty(data) ? dataOpt : _.filter(new_data, u => _.toLower(u.email).indexOf(_.toLower(keyword)) > -1 )
people_value = fixed_data
}
const peopleChange = (data) => {
people_value = data
return people_value;
}
渲染:
<Form.Item label="People">
<Select
showSearch
mode = "multiple"
placeholder = "Choose People, you want inviting"
onChange = {(e) => peopleChange(e)}
style = {{ width: '100%' }}
notFoundContent = {null}
onSearch = {(e) => searchChange(e)}
>
{!_.isNil(filteredOptions) && filteredOptions.map(item =>(
<Select.Option key={Math.random()} value={item._id}>{item.email}</Select.Option>
))
}
</Select>
</Form.Item>
dataOpt 格式:
[
{
"_id": "5d22f0b56fc5841b7caacda5",
"address": "",
"status": "temporary delete",
"email": "ccc@ccc.com",
"name": "Monkey D Luffy",
"phone": "1234"
},
{
"_id": "5d26d9ccf2d1fc17b4d79ab1",
"address": "",
"status": "temporary delete",
"email": "kopral@kopral.com",
"name": "kopral@jono.com",
"phone": "12345"
},
{
"_id": "5d2d2be4f471124ad4c0b019",
"address": "",
"status": "not verified",
"email": "asd@asd.com",
"name": "asdfff",
"phone": "1234"
}
]
提前致谢。
【问题讨论】:
标签: reactjs react-hooks antd