Javascript 如何以编程方式让Ant设计在单击enter键时保持选中状态?
我正试图找出如何删除焦点/取消选择/保留Ant Design Select on enter click?我有以下组成部分:Javascript 如何以编程方式让Ant设计在单击enter键时保持选中状态?,javascript,reactjs,antd,Javascript,Reactjs,Antd,我正试图找出如何删除焦点/取消选择/保留Ant Design Select on enter click?我有以下组成部分: <Select className="role-input" mode="multiple" value={this.selectedValues[config.key]} onChange={(value, options) => this.onRoleChange(value, opt
<Select
className="role-input"
mode="multiple"
value={this.selectedValues[config.key]}
onChange={(value, options) => this.onRoleChange(value, options, index)}
placeholder={intl.formatMessage({ id: config.placeholder })}
size="large"
key={index}
optionFilterProp="children"
filterOption={(input, option) => option.children.toLowerCase().indexOf(input.toLowerCase()) >= 0}
onInputKeyDown={() => console.log('hi')}
>
{roleOptions}
</Select>
this.onRoleChange(值、选项、索引)}
占位符={intl.formatMessage({id:config.placeholder})}
size=“大”
键={index}
optionFilterProp=“儿童”
filterOption={(输入,选项)=>option.children.toLowerCase().indexOf(输入.toLowerCase())>=0}
onInputKeyDown={()=>console.log('hi')}
>
{roleOptions}
现在,当我看到inputKeyDown时,我就
console.log(“hi”)
。我想知道我怎样才能去掉焦点/取消选择/保持选择在inputKeyDown上。我看到有一些select方法,如blur()
,其描述是移除焦点,但是,没有任何示例,我也不知道如何实现它。您需要将ref
指定给select
。然后调用current
上的方法
const selectRef = React.useRef(null);
const handleInputKeyDown = () => {
if (selectRef.current) {
selectRef.current.blur();
}
};
return (
<Select
ref={selectRef}
onInputKeyDown={handleInputKeyDown}
...
const selectRef=React.useRef(null);
常量handleInputKeyDown=()=>{
如果(选择ref.current){
选择ref.current.blur();
}
};
返回(