UNPKG

@react-native-aria/interactions

Version:
25 lines 867 B
import { useEffect, useRef } from 'react'; import { BackHandler } from 'react-native'; export function useBackHandler({ enabled, callback }) { const backHandlerRef = useRef(null); useEffect(() => { const backHandler = () => { callback(); return true; }; if (enabled) { backHandlerRef.current = BackHandler.addEventListener('hardwareBackPress', backHandler); } else { var _backHandlerRef$curre; (_backHandlerRef$curre = backHandlerRef.current) === null || _backHandlerRef$curre === void 0 || _backHandlerRef$curre.remove(); } return () => { var _backHandlerRef$curre2; return (_backHandlerRef$curre2 = backHandlerRef.current) === null || _backHandlerRef$curre2 === void 0 ? void 0 : _backHandlerRef$curre2.remove(); }; }, [enabled, callback]); } //# sourceMappingURL=useBackHandler.js.map