2017-09-13 45 views
0

我綁定與下面的代碼的HTML日期,如何不顯示時間,當領域沒有時間?

<p class="margin-right-3x"> 
    <i class="zmdi zmdi-calendar icon icon--white-icon "></i> 
    {{event?.date.start | date:'EEEE, MMMM dd, yyyy, h:mm a'}} 
</p> 

如果數據庫有日期與時間,有時候數據庫沒有與它相關聯,看起來如下時間能正常工作,

enter image description here

我怎麼可以忽略時間如果沒有時間?有沒有管道或我如何檢查這種情況?

+0

創建一個自定義管道,以檢查是否輸入字符串的一部分時間不爲零,使用datePipe用'EEEE,MMMM DD,YYYY,H變換:MM了'格式,otherwize使用'EEEE ,MMMM dd,yyyy'作爲模式。 – mok

+0

@mok你能提供樣品嗎? –

+0

@mok請提供樣本 –

回答

0

可以創建其中檢查給定日期的時間部分並相應地顯示一個過濾器。我用native Javascript Date方法做了這個。

在HTML

{{ vm.giveDate | timeCheck }} 
在JS

.filter('timeCheck', function($filter) { 
    return function (dateString) { 
      let userDate = new Date(dateString); 
      let UTCMinutes = userDate.getUTCMinutes(); 
      let UTCHours = userDate.getUTCHours(); 
      if(UTCMinutes === 0 && UTCHours === 0) { 
      const options = { weekday: 'long', year: 'numeric', month: 'long', day: 'numeric' }; 
      let dateWithoutTime = userDate.toLocaleDateString('en-us', options); 
      return dateWithoutTime; 
      } else { 
      const full_options = { weekday: 'long', year: 'numeric', month: 'long', day: 'numeric', hour: 'numeric', minute: 'numeric', second: 'numeric' }; 
      let dateWithTime = userDate.toLocaleDateString('en-us', full_options); 
      return dateWithTime; 
      } 
    }; 
}); 

這裏是working DEMO

我的建議是使用moment.js;這將使你的生活輕鬆

相關問題