UNPKG

alinea

Version:

[![npm](https://img.shields.io/npm/v/alinea.svg)](https://npmjs.org/package/alinea) [![install size](https://packagephobia.com/badge?p=alinea)](https://packagephobia.com/result?p=alinea)

26 lines (24 loc) 631 B
import "../../chunks/chunk-U5RRZUYZ.js"; // src/ui/hook/UseHash.ts import { useCallback, useEffect, useState } from "react"; function useHash() { const [hash, setHash] = useState(() => window.location.hash); useEffect(() => { function hashChange() { setHash(window.location.hash); } window.addEventListener("hashchange", hashChange); return () => window.removeEventListener("hashchange", hashChange); }, []); const _setHash = useCallback( (newHash) => { if (newHash !== hash) window.location.hash = newHash; }, [hash] ); return [hash, _setHash]; } export { useHash };