我想跟踪应用程序的工作时间,这个变量可以为我所有的组件,我知道使用商店的解决方案,但在这种情况下,我将有每一秒重新渲染时,这个变量被更新,所以,你能为这种情况提供一些解决方案吗?我需要这个应用程序的时间在我的应用程序中的所有请求,但我不能使用Date.now()cuse这个解决方案的基础上,客户端的时间,有可能是错误的,我的目标是得到当前的时间,当我提出请求。从一开始,我的应用程序就从另一个服务器获取时间,我想每秒递增这个值。我也可以在每个请求中访问这个值,对于请求,我使用redux toolkit query。
1条答案
按热度按时间thigvfpy1#
要跟踪应用的工作时间,并在每个请求中访问此值,而不会导致每秒重新渲染,您可以使用Redux和独立计时器的组合,该计时器独立于React的渲染周期更新时间。
以下是如何实现此功能的分步指南:
1.设置您的Redux商店:使用Redux Toolkit创建Redux商店来管理应用的工作时间。
1.创建单独的计时器:使用JavaScript的
setInterval
函数创建一个计时器,每秒更新应用的工作时间。这个计时器将独立于React的渲染周期,因此它不会触发组件中的重新渲染。1.使用Redux中间件:实现一个Redux中间件,拦截你的API请求,并将当前工作时间作为头或参数添加到每个请求中。
下面是一个示例实现:
步骤1:设置Redux商店
字符串
步骤2:创建单独的计时器
型
步骤3:使用Redux中间件将应用时间添加到每个API请求
您可以使用Redux中间件,特别是
redux-toolkit/query
中间件,拦截每个API请求并将应用程序的工作时间添加到其中。型
最后,使用Redux商店提供程序 Package 整个应用,并包含
Timer
组件以启动应用时间跟踪:型
通过此设置,应用的工作时间将每秒独立更新,您可以使用Redux中间件在任何请求中访问此值,而不会导致组件中不必要的重新渲染。