UNPKG

taro-hooks

Version:
27 lines 963 B
import { useDidHide } from '@tarojs/taro'; import { useEffect, useState } from '@taro-hooks/core'; function useVisible() { var _useState = useState(true), visible = _useState[0], changeVisible = _useState[1]; var listenVisible = function listenVisible() { var visibleState = document.visibilityState; changeVisible(visibleState === 'visible'); }; useEffect(function () { window.addEventListener('visibilitychange', listenVisible, false); window.addEventListener('focus', listenVisible, false); window.addEventListener('blur', listenVisible, false); return function () { window.removeEventListener('visibilitychange', listenVisible, false); window.removeEventListener('focus', listenVisible, false); window.removeEventListener('blur', listenVisible, false); }; }, []); // unmount change false useDidHide(function () { changeVisible(false); }); return visible; } export default useVisible;