Всплывающее оповещение Javascript — обратный отсчет дней внутри оповещения (7-0 дней)

#javascript #html #angularjs #momentjs #backend

#javascript #HTML #angularjs ( ангулярджс ) #momentjs #серверная часть

Вопрос:

У меня есть всплывающее оповещение в JS и HTML, которое должно всплывать, если тикет старше 7 дней. Когда запрос действительно появляется, у пользователя есть еще 7 дней, чтобы ответить на запрос, так что в общей сложности он составляет 14 дней.

Моя проблема заключается в следующем: если появляется всплывающее окно, в предупреждении должно быть указано, что у человека есть 7 дней, чтобы ответить на запрос, но в предупреждении 7 дней должны выпадать на день каждые 24 часа, но я, кажется, борюсь с этим, у меня есть несколько скриншотов и код, возможно, я что-то упускаю или покажите мне, что я могу добавить или сделать.

ВСПЛЫВАЮЩЕЕ окно с предупреждением HTML / JS

Заранее благодарю.

Комментарии:

1. Не могли бы вы сообщить мне, почему вы хотели удалить код из моего ответа?

Ответ №1:

Просто чтобы было ясно, если я вас правильно понял, это должны быть показанные оставшиеся времена:

  7 days old --> showing 7 days left
10 days old --> showing 4 days left
13 days old --> showing 1 day left
14 days old --> showing 0 days left
  

В коде это должно гласить:

 let eventDate= moment(lastEvent.event_date_time);
let dayDifference = moment().diff(eventDate, 'days');

// Even if the popup appears after 7 days, we can still use the total time 
// of 14 days for calculation of the remaining time to be shown.
$scope.tempData.autoClosedDaysLeft = (14 - dayDifference < 0) ? 0 : (14 - dayDifference);

// if the remaining time equals 0, "showAutoCloseAlert" should be set to true.
$scope.tempData.showAutoCloseAlert = ($scope.tempData.autoClosedDaysLeft === 0);
  

Кстати, оно должно гласить «Предыдущее событие«, а не «Предыдущее событие» 🙂

Вот скрипка, которая должна дать вам представление, если это то, что вы ищете.