自适应div的高度如何计算?

143 阅读1分钟

使用ResizeObserver即可

  // 用于监听 CorePointsWrapper 的高度
  useEffect(() => {
    const container = corePointsWrapperRef.current;
    if (!container) return;

    // 使用 ResizeObserver 监听高度变化
    const resizeObserver = new ResizeObserver(entries => {
      for (let entry of entries) {
        const height = entry.contentRect.height;
        const resultHeight = window.innerHeight - 100 - 72 - height;

        setCorePointsHeight(resultHeight);
      }
    });

    resizeObserver.observe(container);

    // 清理 observer
    return () => {
      if (container) {
        resizeObserver.unobserve(container);
      }
    };
  }, [deviceInfo]);