用途:在 TanStack Query 中同步缓存,配合 broadcastQueryClient 与 BroadcastChannel 实现多标签页缓存同步、实时失效和 WebSocket 事件驱动的数据更新。
主要能力:通过 broadcastQueryClient 将 QueryClient 的缓存变更广播到其他标签页;在实时事件中调用 invalidateQueries 触发重新获取;用 setQueryData 更新窄范围缓存切片。
使用方式:安装示例为 import { QueryClient } from '@tanstack/react-query' 与 import { broadcastQueryClient } from '@tanstack/query-broadcast-client-experimental',创建 QueryClient 后在浏览器环境调用 broadcastQueryClient({ queryClient, broadcastChannel: 'app-query-cache' })。实时事件中可调用 queryClient.invalidateQueries({ queryKey: ['todo', todoId] }) 或 queryClient.setQueryData(['todo', todo.id], todo)。
限制与注意:broadcast 包为实验性,应仅在浏览器端隔离安装,服务端不应调用 BroadcastChannel;Query 不是规范化缓存,实时写入时优先使用失效而非复制服务端状态模型。资料未提供收费、平台或效果信息。