React、NodeJS、MySQL设置日期输入中的日期值

pbossiut  于 2023-01-25  发布在  Mysql
关注(0)|答案(1)|浏览(148)

我需要设置从数据库(MySQL)检索的日期输入的值。我的模型有两个日期选择器(checkIn和CheckOut),在React和Node上为string,在mySQL中设置为日期类型。
这是我的useEffect:

const { register, handleSubmit, formState, setValue } = useForm<VacationModel>();
const navigate = useNavigate();
const params = useParams();

useEffect(() => {
    const id = +params.vacationId; // Same name as router parameter.
    vacationsService.getOneVacation(id)
        .then(vacation => {
            setValue("vacationId", vacation.vacationId);
            setValue("destination", vacation.destination);
            setValue("description", vacation.description);
            setValue("checkIn", vacation.checkIn);
            setValue("checkOut", vacation.checkOut);
            setValue("price", vacation.price);
            setValue("image", vacation.image);
        })
        .catch(err => notifyService.error(err));
}, []);

怎样才能在我的编辑组件中从DB中设置正确的日期?谢谢。

bzzcjhmw

bzzcjhmw1#

找到答案。在数据库中,我将日期从%d/%m/%Y格式化为%Y-%m-%d。之后,我必须使用以下命令将字符串转换为此特定格式:

setValue("checkIn", new Date(vacation.checkIn).toISOstring().split('T');
setValue("checkOut", new Date(vacation.checkOut).toISOstring().split('T');

然后正确地插入了值。希望对其他人有所帮助。

相关问题