初始化,dom.offsetWidth 确实为 0.
解决
let timer;
const PageA = () => {
const [count, setCount] = useState(0);
const widthFun = () => {
// 当无法使用ref获取时,只好使用原生方法
const [formDom] = document.getElementsByClassName('needed-form');
const formWidth = formDom?.offsetWidth;
};
useEffect(() => {
timer = setTimeout(() => {
filterItemHidden();
}, 0);
window.addEventListener('resize', widthFun);
return () => {
window.removeEventListener('resize', widthFun);
clearTimeout(timer);
};
}, []);
return <div></div>;
};