Skip to content Skip to sidebar Skip to footer

Convert Time Stamp To Date Inside Angular Expression Like {{new Date(timestamp)}}

Today I found that's it's not working to convert for a date inside angular expression. So I just making something like {{new Date(elem.timestamp}} But it fai

Solution 1:

Because angular expressions do not accept arbitrary Javascript code, including creating new objects. What you are looking for is called angular filters, they were specifically designed for this case.

So instead of

{{newDate(elem.timestamp)}}

you should write

{{elem.timestamp | date: 'yyyy-MM-dd'}}

More info on the date filter can be found here. More on filters, in general, can be found here.

Solution 2:

If you are dealing with Firebase Timestamp object (https://firebase.google.com/docs/reference/android/com/google/firebase/Timestamp), you can use:

{{elem.timestamp.seconds*1000 | date}}

Solution 3:

Just an extention of what @package mentioned we can also go to hour-second as well from millisecond, the format can be any pattern as well

< th >{{elem.timestamp | date: 'yyyy/MM/dd h:mm:ss a'}}< /th >

Solution 4:

Dealing with Firebase timestamp I use :

{{ element.seconds * 1000| date:'short' }}

Solution 5:

It is probably best to use a library like moment for this. Also the functionality you are looking for is meant to be implemented via "filters"

Also see angular-moment

Post a Comment for "Convert Time Stamp To Date Inside Angular Expression Like {{new Date(timestamp)}}"