Common Pitfalls and How to Avoid Them


Let's create a confortable working environment: let's use Next.js.

Wip
4 minutes read

🐞 Caveats

Here are some potential caveats to consider when using the useDimensions hook:

1️⃣ Container Needs Dimensions

In HTML, not all <div> elements have dimensions by default. If a <div> lacks dimensions, the useDimensions hook won't be able to measure it!

  • An inline <div> cannot have width and height.
  • By default, a <div> has no height. Its width is 100%, but its height is determined by its content. This means that without content, the <div> will have no height.

2️⃣ Performance

When the graph dimensions change, ensure that you only recompute what is necessary within the visualization component. useMemo and useCallback are valuable tools for optimizing performance.

3️⃣ Design

A graph is not merely a piece of text; its aspect ratio significantly affects its appearance. A wide graph might look great, while a narrower version may not. Sometimes, adapting the chart type based on window size is the best approach.

4️⃣ Zero Dimensions

Be cautious with the useDimensions hook. When your app first loads, the reference dimensions might be null or zero. Ensure your code handles this scenario properly to avoid errors.