我无法使用 react-bootstrap FormControl 获得输入以保持焦点。似乎禁用,然后启用控件会删除焦点。这是一个不受控制的输入,但与受控输入有同样的问题。 JS小提琴在这里
const SearchInput = ({onChange, ...props}) => {
return (
<Form
onSubmit={evt => {
evt.preventDefault();
onChange();
}}
>
<Form.Control {...props} />
</Form>
);
};
const App = (props) => {
const [search,setSearch] = useState();
const [searching, setSearching] = useState(false);
const handleSearch = () => {
setSearching(true);
setTimeout(() => {
setSearching(false)
}, 2000);
};
return (
<div>
<SearchInput
autoFocus
disabled={searching} /* if this line is removed, focus remains */
defaultValue={search}
onChange={handleSearch}
/>
<div>{search}</div>
</div>
);