useDocumentVisibility
Subscribes to the visibilitychange event and returns the current document.visibilityState. SSR-safe — returns 'visible' on the server.
Use it to pause polling, animations, or audio while the tab is in the background.
import { useEffect } from 'react'
import { useDocumentVisibility } from '@wire-ui/react'
function Polling() {
const visibility = useDocumentVisibility()
useEffect(() => {
if (visibility !== 'visible') return
const id = setInterval(refresh, 5000)
return () => clearInterval(id)
}, [visibility])
return null
}Returns
'visible' | 'hidden' — backed by useSyncExternalStore for tear-free updates.
Last updated on