emeren of Strugini Crew
5/14/2020 - 2:39 PM

useSize

import { useState, useEffect, RefObject } from "react"

export const useSize = (node: RefObject<HTMLElement>) => {
  const [boundary, setBoundary] = useState<ClientRect | null>(null)

  useEffect(() => {
    if (node && node.current) {
      setBoundary(node.current.getBoundingClientRect())
    }
  })

  return boundary
}