我正在开发一个应用程序,用户需要在其中执行一些操作,直到倒计时完成。
- 作为我尝试使用的第一个选项
new Date()
,但如果更改浏览器时间,它将无法正常工作。即使是Tradingview 时间和应用程序时间之间的 10 秒差异也可能很关键。 作为第二个选项,我从应用程序 API 获取服务器时间,并使用简单的
setInterval()
方法增加该值,但有时会滞后 10-20 秒。let timestamp = await getServerTime() setInterval(() => { timestamp++; this.currentTimestamp = timestamp }, 1000);
作为第三个选项,我尝试使用
service-worker
相同的setInterval()
方法,并将更新的值推送到组件。此选项在长时间使用后也会开始滞后。
我阅读了很多建议,但没有一个有助于解决这个问题。您是否知道正确使用服务器端时间而不滞后的任何方法?
提前致谢!