我可以检测浏览器的网络活动是否空闲吗?

问题描述 投票:0回答:2

在 angularJS 应用程序中,用户和服务器之间存在相当大的延迟(带宽也可能有限),因此当用户请求新页面时,必须等待大约 2-500 毫秒才能加载。

我正在考虑在后台“预加载”模型数据、模板、脚本,但仅在用户没有请求页面时才打算这样做。如果用户请求一个特定页面,我想停止预加载过程并加载用户明确请求的资源。

所以我的问题归结为:

  • 有没有办法“仅在”没有网络活动的情况下发出ajax请求?
  • 有没有办法“暂停”当前正在运行的ajax请求?或
  • 有没有办法对ajax请求进行优先级排序?

谢谢,

javascript angularjs ajax web-applications
2个回答
0
投票

似乎https://nicedoc.io/pastelsky/network-idle-callback会对您有帮助。

它使用serviceWorker来观察网络调用,并在感知到网络空闲时调度事件。

npm install network-idle-callback

用法


-2
投票

听起来像 requestidlecallback 就是您正在寻找的。还有一个构建在顶部的包,公开了您可以监听的事件:https://github.com/choojs/on-idle

© www.soinside.com 2019 - 2024. All rights reserved.