在我删除 FormItem 中的 AutoComplete' 选项后,如何清除带有删除值的输入?
After I delete AutoComplete'option in FormItem, How could I clear input with the deleted value?
环境:
Windows7/Chrome68.0.3440.84/React^16.2.0
ant-design 版本:3.8.0
Link 最小复制:
https://codepen.io/evanna51/pen/KBGEXb
发生:
我删除了一个选项后,值仍然取决于输入。
重现步骤:
点击删除
已删除name1
.
列表不再有 name1
但它仍在输入中
我已经删除了状态选项:result.splice(key, 1);
,
甚至使用antD的表单方法setFieldsValue
,eg:this.props.form.setFieldsValue({name: ""});
删除后如何清除输入?
我认为使用 AntDesign 的基本自动完成是不可能的,你需要使用 Lookup-Patterns - Certain Category 方法。
你可以先定义一个<OptGroup />
为:
const OptGroup = AutoComplete.OptGroup;
然后您可以使用 <OptGroup />
挂载到 <Option />
上,如下所示:
const children = result.map((value, index) => {
return (<OptGroup
key={index}
label={<Icon
style={{'margin-top':'40px','float':'right','cursor':'pointer'}}
type="close"
onClick={this.deleteOption.bind(this, index)} />}>
<Option key={index} value={value}>{value}</Option>
</OptGroup>);
});
我更新了live demo in CodePen。
环境: Windows7/Chrome68.0.3440.84/React^16.2.0
ant-design 版本:3.8.0
Link 最小复制: https://codepen.io/evanna51/pen/KBGEXb
发生: 我删除了一个选项后,值仍然取决于输入。
重现步骤:
点击删除
已删除
name1
.列表不再有
name1
但它仍在输入中
我已经删除了状态选项:result.splice(key, 1);
,
甚至使用antD的表单方法setFieldsValue
,eg:this.props.form.setFieldsValue({name: ""});
删除后如何清除输入?
我认为使用 AntDesign 的基本自动完成是不可能的,你需要使用 Lookup-Patterns - Certain Category 方法。
你可以先定义一个<OptGroup />
为:
const OptGroup = AutoComplete.OptGroup;
然后您可以使用 <OptGroup />
挂载到 <Option />
上,如下所示:
const children = result.map((value, index) => {
return (<OptGroup
key={index}
label={<Icon
style={{'margin-top':'40px','float':'right','cursor':'pointer'}}
type="close"
onClick={this.deleteOption.bind(this, index)} />}>
<Option key={index} value={value}>{value}</Option>
</OptGroup>);
});
我更新了live demo in CodePen。