我在嵌套组件中有一个输入。该组件的状态在其父组件中。 (状态不能在子组件中。)问题在于每次输入更改都会失去焦点,用户必须单击该输入。我尝试将SearchComponent
包装在React.memo
中,但仍然无法正常工作。我在做什么错,该如何解决?
父组件
const MainTable = props => {
const [myString, setMyString] = useState('');
const changeHandler = value => {
setMyString(value);
}
<MyInputComponent
changeHandler={changeHandler}
myString={myString}
/>
嵌套组件
const SearchComponent = props => {
const [searchQuery, setSearchQuery] = useState('');
return (
<input
type='text'
value={props.myString}
onChange={e => {
props.changeHandler(e.target.value);
}}
/>
);
};