react-datepicker 没有将 setState 设置为 dd/MM/yy
react-datepicker doesn't setState to dd/MM/yy
日期以正确的格式显示 (31/08/21),但 onChange 将开始日期设置为如下所示:
Tue Aug 31 2021 21:29:17 GMT+0200 (Mitteleuropäische Sommerzeit)
如何保存我显示的格式?
import DatePicker from "react-datepicker";
import "react-datepicker/dist/react-datepicker.css";
export default function Bodyweight() {
const [startDate, setStartDate] = useState(new Date());
return(
<div>
<DatePicker
dateFormat="dd/MM/yy"
selected={startDate}
onChange={(date) => setStartDate(date)}
/>
</div>
)}
您的 DatePicker
组件接受 Tue Aug 31 2021 21:29:17 GMT+0200 (Mitteleuropäische Sommerzeit)
格式的日期。
它还有 returns 相同格式的日期。
要将日期转换为所需格式,您的选择不多。
如果 DatePicker 是您自己的组件,请检查其实现并修改代码,使其 returns 以所需格式显示日期。
如果选项 1 不可行,则手动将日期转换为所需格式。请注意,您可能需要第三个变量来存储格式化日期,因为您的 DatePicker 组件接受实际日期对象而不是字符串。
参考此 link 以 req 格式转换日期。
Format JavaScript date as yyyy-mm-dd
只需在初始状态集中使用 new Date().toLocaleDateString()
,即
const [startDate, setStartDate] = useState(new Date().toLocaleDateString());
我是按照我的理解来回答的,如果这不是你要找的解决方案,欢迎评论指正
日期以正确的格式显示 (31/08/21),但 onChange 将开始日期设置为如下所示:
Tue Aug 31 2021 21:29:17 GMT+0200 (Mitteleuropäische Sommerzeit)
如何保存我显示的格式?
import DatePicker from "react-datepicker";
import "react-datepicker/dist/react-datepicker.css";
export default function Bodyweight() {
const [startDate, setStartDate] = useState(new Date());
return(
<div>
<DatePicker
dateFormat="dd/MM/yy"
selected={startDate}
onChange={(date) => setStartDate(date)}
/>
</div>
)}
您的 DatePicker
组件接受 Tue Aug 31 2021 21:29:17 GMT+0200 (Mitteleuropäische Sommerzeit)
格式的日期。
它还有 returns 相同格式的日期。
要将日期转换为所需格式,您的选择不多。
如果 DatePicker 是您自己的组件,请检查其实现并修改代码,使其 returns 以所需格式显示日期。
如果选项 1 不可行,则手动将日期转换为所需格式。请注意,您可能需要第三个变量来存储格式化日期,因为您的 DatePicker 组件接受实际日期对象而不是字符串。
参考此 link 以 req 格式转换日期。 Format JavaScript date as yyyy-mm-dd
只需在初始状态集中使用 new Date().toLocaleDateString()
,即
const [startDate, setStartDate] = useState(new Date().toLocaleDateString());
我是按照我的理解来回答的,如果这不是你要找的解决方案,欢迎评论指正