2017-03-02 96 views
1

我用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 ' '; 
    } 
}; 

不過。

+1

你如何識別'start_date'和'end_date'?我擔心你提供的信息太少讓我們來幫助你。 – VincenzoC

回答

1

我想你是使用兩個不同的日期選擇器。你可以使用一個關鍵字或東西可能:

$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'); 
0

你應該檢查你的「日期」是新的,然後現在或以上,然後設置格式。

$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

0

我有固定它像這樣:

$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 ' '; 
       } 
      }; 
0

嘗試使用此代碼:

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... 

http://momentjs.com/docs/#/displaying/difference/