gpt4 book ai didi

javascript - 渲染后获取div的动态宽度

转载 作者:行者123 更新时间:2023-12-02 01:39:22 26 4
gpt4 key购买 nike

我想获取动态 div 绘制后的宽度,但我不知道如何获取。这就是我正在做的事情:

const ref=useRef();
useEffect(()=>{
console.log('REF',ref.current.offSetWidth)
},[])



return (
<div ref={ref}>


</div>

我尝试了 window.resize eventListener,但只有在屏幕尺寸发生变化时才会触发它。我的问题是,在屏幕上渲染后,是否可以获取 div 的宽度?我没有预先设置宽度,它只是在弹性框中获取 100% 的父元素

最佳答案

您可以使用ResizeObserver ,React 的一个简单实现可能是这样的:

import {useRef, useEffect} from 'react'

export default function App() {
const divRef = useRef()

useEffect(() => {
new ResizeObserver(() => {
console.log('Width: ', divRef.current.clientWidth)
}).observe(divRef.current)
}, [])

return (
<div ref={divRef}>
</div>
);
}

关于javascript - 渲染后获取div的动态宽度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/71868523/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com