如何格式化两种不同格式的日期?
问题描述:
我用md-datepicker
,我想用一句话“到”格式化start_date
用字“从” 和end_date
。 我试图使用:它设置为 “从” 所有日期如何格式化两种不同格式的日期?
$mdDateLocale.formatDate = function (date) {
if (date) {
var formatedDate = moment(date).format('[to] DD-MM-YYYY');
return formatedDate;
} else {
return ' ';
}
};
和
$mdDateLocale.formatDate = function (date) {
if (date) {
var formatedDate = moment(date).format('[from] DD-MM-YYYY');
return formatedDate;
} else {
return ' ';
}
};
不过。
答
我想你是使用两个不同的日期选择器。你可以使用一个关键字或东西可能:
$mdDateLocale.formatDate = function (date, keyword) {
if (date) {
var formatedDate = moment(date).format('[' + keyword + '] DD-MM-YYYY');
return formatedDate;
} else {
return ' ';
}
};
,并调用它像:
formatDate(date, 'from');
formatDate(date, 'to');
答
你应该检查你的“日期”是新的,然后现在或以上,然后设置格式。
$mdDateLocale.formatDate = function (date) {
if (date) {
if (new Date(date) > new Date()) {
return moment(date).format('[to] DD-MM-YYYY');
} else {
return moment(date).format('[from] DD-MM-YYYY');
}
return formatedDate;
} else {
return ' ';
}
};
+0
的startDate和结束日期既可以是比现在年纪大了 – Serhiy
答
我有固定它像这样:
$mdDateLocale.formatDate = function (date) {
if (date) {
if(date == vm.startDate) {
var formatedDate = moment(date).format('[From:] DD-MM-YYYY');
return formatedDate;
} else if(date == vm.endDate) {
var formatedDate = moment(date).format('[To:] DD-MM-YYYY');
return formatedDate;
} else {
var formatedDate = moment(date).format('DD-MM-YYYY');
return formatedDate;
}
} else {
return ' ';
}
};
答
尝试使用此代码:
var startDate = moment(some_start_date_value);
var endDate = moment(some_end_date_value);
var differenceDays = startDate.diff(endDate, 'days');
//you also can use 'minutes', 'hours', etc...
你如何识别'start_date'和'end_date'?我担心你提供的信息太少让我们来帮助你。 – VincenzoC