Files
vant/packages/vant-use/src/usePageVisibility/index.ts
T

19 lines
444 B
TypeScript

import { ref } from 'vue';
import { inBrowser } from '../shared';
import { useEventListener } from '../useEventListener';
export function usePageVisibility() {
const visibility = ref<VisibilityState>('visible');
const setVisibility = () => {
if (inBrowser) {
visibility.value = document.hidden ? 'hidden' : 'visible';
}
};
setVisibility();
useEventListener('visibilitychange', setVisibility);
return visibility;
}