[英]next js state change doesnt change value of input
我有这段代码,但是当状态改变时输入字段的值不会改变。当用户点击一行时状态会改变。 当我在文本字段之外打印值时,状态正在发生变化,但这并未反映在输入字段中。 我尝试使用 value 而不是 defaultValue 但它不起作用。
<Controller
name="name"
control={control}
defaultValue={selectedRow.name}
value={selectedRow.name}
rules={{
required: true,
}}
render={({ field }) => (
<TextField
variant="outlined"
fullWidth
id="name"
label="Name"
error={Boolean(errors.name)}
helperText={
errors.name ? 'Name is required' : ''
}
{...field}
></TextField>
)}
></Controller>
看起来您使用的是 react-hook-from ( https://react-hook-form.com/ )。
value
和onChange
应该像这样在TextField
内部。
<Controller
name="name"
control={control}
rules={{
required: true,
}}
render={({ field, value, onChange }) => (
<TextField
value={value}
onChange={onChange}
variant="outlined"
fullWidth
id="name"
label="Name"
error={Boolean(errors.name)}
helperText={
errors.name ? 'Name is required' : ''
}
{...field}>
</TextField>
)}
/>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.