Angular: Как получить DateTime n часов / n дней a go для заданной отметки времени - PullRequest
0 голосов
/ 30 апреля 2020

Я очень новичок в Angular. В настоящее время я использую Angular5. Может ли кто-нибудь подсказать мне, как получить дату и время для данной метки времени для n часов a go, n дней a go?

Как я хочу знать дату и время 7 часов a go / 30 дней go et c для часового пояса Нью-Йорка ,.

Большое спасибо, Thillai

Ответы [ 3 ]

1 голос
/ 30 апреля 2020

Я хотел бы рассмотреть использование момента. js, который позволяет выполнять вычисления, например:

moment().subtract(10, 'days').calendar(); // 04/20/2020
moment().subtract(6, 'days').calendar();  // Last Friday at 2:17 PM
moment().subtract(3, 'days').calendar();  // Last Monday at 2:17 PM
moment().subtract(1, 'days').calendar();  // Yesterday at 2:17 PM
moment().calendar();                      // Today at 2:17 PM
moment().add(1, 'days').calendar();       // Tomorrow at 2:17 PM
moment().add(3, 'days').calendar();       // Sunday at 2:17 PM
moment().add(10, 'days').calendar();  

Вы также можете использовать часовой пояс момента: https://momentjs.com/timezone/

var newYork    = moment.tz("2014-06-01 12:00", "America/New_York");
var losAngeles = newYork.clone().tz("America/Los_Angeles");
var london     = newYork.clone().tz("Europe/London");

newYork.format();    // 2014-06-01T12:00:00-04:00
losAngeles.format(); // 2014-06-01T09:00:00-07:00
london.format();     // 2014-06-01T17:00:00+01:00
0 голосов
/ 30 апреля 2020

Вам следует подумать об использовании библиотеки как момент. js, и отличный ответ здесь

0 голосов
/ 30 апреля 2020

Вам не нужно angular, вам просто нужно управлять им с помощью Javascript внутри Angular.

let dte = new Date();
dte.setDate(dte.getDate() - 30);
this.daysAgo = dte.toString();

Или для часов:

this.hoursAgo = new Date(new Date().getTime() - (7 * 60 * 60 * 1000));

JS Фрагмент

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...