0

我一直在玩弄这个有一段时间无济于事。

当用户在文本字段中手动输入日期时,该 onChange 事件将触发,并且一切都按我的意愿进行。当用户从 datepicker 中单击一个日期时,什么也没有发生。

我仍然习惯于在控制器中使用 MUI 字段来适应 React Hook Form,但我不确定我做错了什么。

  const { handleSubmit, control, register } = useForm();
  const [selectedDate, setSelectedDate] = React.useState(null);

  const handleDateChange = (date) => {
    console.log(date)
    setSelectedDate(date);
  };

        <form onSubmit={handleSubmit(submitForm)}>       
              <MuiPickersUtilsProvider utils={DateFnsUtils}>
                <Controller
                  control={control}
                  name={"newEffectiveDate"}
                  defaultValue={null}
                  render={() => (
                    <KeyboardDatePicker
                      inputVariant="outlined"
                      disableToolbar
                      format="MM/dd/yyyy"
                      margin="normal"
                      id="date-picker-inline"
                      label="Date picker inline"
                      value={selectedDate}
                      onChange={date => handleDateChange(date)}
                      KeyboardButtonProps={{
                        "aria-label": "change date",
                      }}
                    />
                  )}
                />
              </MuiPickersUtilsProvider>
        </form>

Any help would be much appreciated!
4

1 回答 1

0

原来,我只需要将autoOk道具添加到 KeyboardDatePicker 组件......

于 2020-12-01T19:35:03.353 回答