angularjs вычисляет разницу во времени между временем начала и текущим временем
Я пытаюсь создать что-то похожее на секундомер в приложении AngularJS.
У меня есть кнопка "Пуск", при нажатии на которую приложение установит переменную startTime, которая получает текущее время, а затем я хочу другую переменную, которая обновляется каждую секунду и вычисляет разницу в секундах между переменной startTime и текущим временем, которое я могу использовать в качестве значения секундомера, отображаемого пользователю. Мне также нужно будет иметь возможность остановить и перезапустить таймер, так что я хотел бы значение секундомера должно быть сохранено в секундах, чтобы я мог легко запустить таймер на любое количество секунд и возобновить таймер.
Как это сделать проще всего?
2 ответа:
Развивая мои комментарии выше, что-то вроде этого...
var startTime = new Date(); $scope.stopwatch = 0; $interval(function() { $scope.stopwatch = (new Date() - startTime) / 1000; }, 1000);
И в вашем шаблоне
<p>Seconds: {{ stopwatch }}</p>
Бонусные баллы за создание фильтра для форматирования секунд в формате
hh:mm:ss
.