我可以通过状态调度程序(useState
的第二个arg(作为儿童组件的道具。是对抗或允许的练习吗?
例如。我有一个组件TextField
。我到处都在使用它。我需要的每个人都将其价值保存到状态。例如:
import { default as React, setState, useCallback } from 'react';
import { TextField } from '@component';
const SomeComponent = (props) => {
const [value, setValue] = useState('');
const handleChange = useCallback((e) => setValue(e.target.value), []);
return (
<div>
<TextField onChange={handleChange} />
</div>
)
}
当TextField
使用时,我很累在任何地方写手术...我想让这种情况最简单。
我可以将setValue
作为道具传递给Textfield(而不是添加onchange(并在TextField内部实现设置值?
// ...
<TextField valueDispatcher={setValue} />
//...
是。
您可以将setValue
作为道具传递给儿童组件。从儿童组成部分您可以设置值。
工作演示