我正在使用ReactHooks UseState,并希望在UseState中设置值,但它不起作用。。为什么?帮我??
JS
const [value, setValue] = useState({
headline: '',
paragraph: '',
});
const onChanged = (e) => {
let { name, value } = e.target.value;
setValue((prev) => ({ ...prev, [name]: value }));
};
HTML
<input
value="{value.headline}"
onChange="{onChanged}"
type="text"
name="headline"
/>
试试这个,它会起作用的。。。
const {name, value} = e.target
setValue(prev => ({...prev, [name]: value}))
问题出在您的析构函数中:
const [value, setValue] = useState({
headline: '',
paragraph: ''
});
const onChanged = e => {
let {name, value} = e.target // <--- You do not need .value here
setValue(prev => ({...prev, [name]: value}))
}
<input
value={value.headline}
onChange={onChanged}
type="text" name="headline" />
您正在从value
中退出,因此e.target.value
是错误的。