Я использую Angular, и мне нужно время, как долго кто-то был на странице - PullRequest
0 голосов
/ 29 августа 2018

Я видел несколько способов сделать это, используя vanilla JS и jQuery, но, к сожалению, ни один из них о том, как понять это с помощью Angular.

Я не самый опытный, но я стараюсь изо всех сил получить какой-то таймер, который, когда пользователь нажимает на определенной странице, запускает счетчик, затем с помощью ngOnDestory, когда он покидает страницу, останавливает счетчик и отправляет его. на сервер, чтобы сохранить его в БД.

Если кто-нибудь может дать какой-либо совет относительно самого простого способа сделать это, пожалуйста, дайте мне знать. Я читал такие вещи, как TimeMe.js, что замечательно, но я не уверен, как реализовать это с помощью Angular. Также видны обработчики событий окна на https://developer.mozilla.org/en-US/docs/Web/API/WindowEventHandlers/onbeforeunload.

Это НЕ имеет значение, если пользователь неактивен или не смотрит на страницу, что может быть решено после, во-первых, мне нужен таймер, чтобы начать какое-то исследование.

Большое спасибо за ваше время.

1 Ответ

0 голосов
/ 29 августа 2018

Вы можете сохранить отметку времени, используя ngOnInit и ngOnDestroy, например

ngOnInit (){
    this.startTime = Date.now();
}
ngOnDestroy (){
    this.endTime = Date.now();
    totalTime = this.endTime - this.startTime;
}

Тогда totalTime будет временем, которое вы можете отправить на сервер

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