组件:

import { useGetUserNotificationsQuery } from "../../../../api_v2/notifications";

const { data: userNotifications, isFetching: loadingNotifications } =
  useGetUserNotificationsQuery();

useEffect(() => {
  if (userNotifications) {
    const unreadedNots = userNotifications?.filter(
      (notif) => notif.read === false
    );
    setUnreadedNotifications(unreadedNots);
  }
}, [userNotifications]);

不知道如何设置每24小时轮询一次.我的目标是每24小时刷新一次数据,当组件安装时,我不需要立即获取数据.

我在考虑使用setInterval来实现延迟查询和计时器状态,但不确定这是正确的方式.

推荐答案

查询钩子接受一个选项对象,其中包括一个可以启用/配置的pollingInterval属性.

参见:

下面的内容应允许您以24小时间隔实例化查询订阅和轮询.

const TWENTY_FOUR_HOURS = 1000 * 60 * 60 * 24 // 24 hours in milliseconds
const { ... } = useGetUserNotificationsQuery(
  /* arg or undefined */,
  {
    pollingInterval: TWENTY_FOUR_HOURS
  }
);

Lazy Query Hooks包括相同的pollingInterval选项,该选项从启动懒惰查询时(即,当其被触发时)起相同的工作.

const [trigger, { ... }] = useLazyGetUserNotificationsQuery({
  pollingInterval: TWENTY_FOUR_HOURS
});

...

trigger(/* arg or undefined */);

Javascript相关问答推荐

类型脚本中只有字符串或数字键而不是符号键的对象

Rehype将hashtag呈现为URL

将字符串UTC Date转换为ngx—counting leftTime配置值的数字

显示图—如何在图例项上添加删除线效果?

在react JS中映射数组对象的嵌套数据

我正在建立一个基于文本的游戏在react ,我是从JS转换.我怎样才能使变量变呢?

如何将数组用作复合函数参数?

为什么我的自定义元素没有被垃圾回收?

让chart.js饼图中的一个切片变厚?

try 使用PM2在AWS ubuntu服务器上运行 node 进程时出错

在渲染turbo流之后滚动到元素

Reaction即使在重新呈现后也会在方法内部保留局部值

与在编剧中具有动态价值的定位器交互

为什么我的SoupRequest";被重置为初始值,以及如何修复它?

我怎样才能点击一个元素,并获得一个与 puppeteer 师导航页面的URL?

如何正确地在ComponentWillUnmount中卸载状态以避免内存泄漏?

如何在Reaction中设置缺省值, Select 下拉列表,动态追加剩余值?

限制数组中每个元素的长度,

在JS/TS中构造RSA公钥

使用onClick单击子元素时,使用交点观察器的关键帧动画意外运行