我正在使用material-ui/DatePicker
,我正在获取完整格式的日期,我只需要 DD-MM-YYYY
import DatePicker from 'material-ui/DatePicker';
日期选择器组件
<DatePicker
hintText=""
formatDate={(date) => moment(date).format('DD-MM-YYYY')}
value={this.state.contractDate}
onChange={this.handleContractDateChange}
/>
更改时功能如下所示
handleContractDateChange = (event, date) => {
this.setState({
contractDate: date,
});
}
答案 0 :(得分:0)
使用纯JavaScript进行以下操作:
let date = new Date("Fri Jun 22 2018 14:37:47 GMT+0530 (India Standard Time)");
let dd = date.getDate();
let mm = date.getMonth() + 1;
let yyyy = date.getFullYear();
console.log(dd + "-" + mm + "-" + yyyy);
答案 1 :(得分:0)
有一种将JS日期对象转换为DD-MM-YYYY的方法,如下所示
function formatDate(oDate) {
var oTempDate = new Date(oDate),
sMonth = '' + (oTempDate.getMonth() + 1),
sDay = '' + oTempDate.getDate(),
iYear = oTempDate.getFullYear();
if (sMonth.length < 2) { sMonth = '0' + sMonth; }
if (sDay.length < 2) { sDay = '0' + sDay; }
return [sDay, sMonth, iYear].join('-');
}
答案 2 :(得分:0)
根据我在文档(https://v0.material-ui.com/#/components/date-picker中看到的内容),道具formatDate
仅用于格式化在选择日期后显示在字段中的日期选择器的值。您的onChange
处理函数仍然会与date对象一起调用。您必须在onChange处理程序中再次调用moment.format()
。
handleContractDateChange = (event, date) => {
const formattedDate = moment(date).format('DD-MM-YYYY');
// Use formattedDate
this.setState({
contractDate: date,
});
}