【发布时间】:2015-01-31 23:11:40
【问题描述】:
我希望 ajax 请求花费最少的时间(例如 250 毫秒)。
动机是改善用户体验:当请求开始时,会为用户显示一个进度条,并在请求完成时移除。如果响应完成时间不到 100 毫秒,那么用户会在屏幕上体验到模糊的变化,并且看起来很卡。
我的解决方案是存储请求开始的时间,并在响应时使用 $timeout 在“250ms 减去响应时间”之后删除进度指示器。
但是,这感觉像是一个次优的解决方案,甚至可能是一个不应该以这种方式解决的问题。
有没有更好的模式来解决这个问题?
【问题讨论】:
-
如果这是关于用户体验的问题,这可能不是正确的网站
-
我会以完全相反的方式处理这个问题。为什么要惩罚快速连接的用户,强迫他们等待更长的时间才能看到你的进度条?为什么在进度条显示前没有 250 毫秒的超时时间?
-
虽然这个问题是关于蓝鸟的,但问题和解决方案基本相同。
标签: angularjs promise angular-promise