非常重要:此工具目前處於實驗階段。這意味著在次要版本和修補版本中可能會出現破壞性變更。使用時請自行承擔風險。如果您選擇在生產環境中依賴此實驗階段的功能,請將版本鎖定在修補版本級別,以避免意外中斷。
broadcastQueryClient 是一個用於在同源瀏覽器分頁/視窗之間廣播和同步 queryClient 狀態的工具。
此工具以獨立套件形式提供,可透過 '@tanstack/query-broadcast-client-experimental' 導入使用。
導入 broadcastQueryClient 函數,並傳入您的 QueryClient 實例,可選擇性地設定 broadcastChannel。
import { broadcastQueryClient } from '@tanstack/query-broadcast-client-experimental'
const queryClient = new QueryClient()
broadcastQueryClient({
queryClient,
broadcastChannel: 'my-app',
})
import { broadcastQueryClient } from '@tanstack/query-broadcast-client-experimental'
const queryClient = new QueryClient()
broadcastQueryClient({
queryClient,
broadcastChannel: 'my-app',
})
傳入一個 QueryClient 實例,可選擇性地設定 broadcastChannel。
broadcastQueryClient({ queryClient, broadcastChannel })
broadcastQueryClient({ queryClient, broadcastChannel })
選項物件:
interface BroadcastQueryClientOptions {
/** 要同步的 QueryClient */
queryClient: QueryClient
/** 此為用於分頁與視窗間通訊的
* 唯一頻道名稱 */
broadcastChannel?: string
/** BroadcastChannel API 的選項 */
options?: BroadcastChannelOptions
}
interface BroadcastQueryClientOptions {
/** 要同步的 QueryClient */
queryClient: QueryClient
/** 此為用於分頁與視窗間通訊的
* 唯一頻道名稱 */
broadcastChannel?: string
/** BroadcastChannel API 的選項 */
options?: BroadcastChannelOptions
}
預設選項為:
{
broadcastChannel = 'tanstack-query',
}
{
broadcastChannel = 'tanstack-query',
}