You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

React-Bootstrap Form.Control日期类型初始值不显示问题求助

问题解决:react-bootstrap Form.Control type="date"初始值不显示
  • 核心原因:HTML原生type="date"输入框对value格式有强制要求,必须是YYYY-MM-DD格式。你当前用moment(startDate).format("D-MM-YYYY")生成的是「日-月-年」格式,不符合浏览器识别规范,所以无法显示初始值。

  • 修正代码:

const [startDate, setStartDate] = useState(new Date());

return (
  <Form.Control
    type="date"
    value={moment(startDate).format("YYYY-MM-DD")}
    onChange={(e) => setStartDate(new Date(e.target.value))}
  />
);
  • 额外说明:
    • onChange回调中,e.target.value返回的是标准YYYY-MM-DD格式字符串,需要转成Date对象存入state,避免后续逻辑出错。
    • type="date"输入框不需要设置placeholder,浏览器会自带格式提示,当value符合规范时,会自动替换为具体日期。

内容的提问来源于stack exchange,提问作者udarts

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.20 05:58:09