我想在AngularJS Web应用程序中实现超时功能。每当用户执行任何操作时,回调会将计时器设置为10分钟。当此计时器在客户端到期时,会向服务器发送超时请求。
如何实现从每个用户操作触发的回调?也许在整个页面/窗口上注册onclick和onkeydown监听器?
答案 0 :(得分:0)
根据$rootScope的角度文档:
如果您希望在调用$ digest()时收到通知,则可以 使用$ watch()注册watchExpression函数,没有监听器。
我不确定是否在每个用户操作上调用了$digest
,但它可能是一个很好的起点。
仅供参考 - 我如何实现用户超时如下:
这应该适用于大多数单页应用程序,因为用户执行的任何操作都会导致状态更改,而大多数状态更改都涉及调用服务器来获取或保存内容。它错过了次要的用户操作,但我发现现实世界中使用这种技术有足够的分辨率才能有效。
答案 1 :(得分:0)
看起来像hackedbychinese.github.io/ng-idle做我需要的事情