Search code examples
javascriptdatemomentjsdayjs

Display Relative Time for just one day?


I use dayJS and want to display relative time just for one day - 24 hour

is there way to customize fromNow() to just display for one day?

example

currentDate = 'Sun Aug 15 2021 15:03:09 GMT+0300';

oldDate = 'Fri Aug 13 2021 15:03:09 GMT+0300';

created_at = dayjs(currentDate).fromNow(true) => 17 min 2 sec // ok 👍✅ 

// if +=1 day
created_at = 
dayjs(oldDate).fromNow(true) => 2 day // hidden this one

Solution

  • Here's a workaround i tried :) if there’s any other solution, let me know :)

     let acceptedDate = ['few seconds', 'minute', 'minutes', 'hour', 'hours'];
      let currentDate = dayjs();
      let targetedDay = created_at;// from api
      
      let currentRelativeTime = dayjs(targetedDay).from(currentDate, true);
      let timeArr = currentRelativeTime.split(' ');
      let isAcceptedDate = acceptedDate.some(item => timeArr.includes(item));
      console.log(isAcceptedDate);