React-监听div宽度的变化

时间:2020-10-19 16:14:41

标签: reactjs

我正在尝试设置一个侦听器以确定我的应用程序中特定div的宽度。如果div宽度小于800px,我想将样式设置为显示:无。我可以按原样进行操作,但是它不会听,只会在刷新页面时删除div。

const [style, setStyle] = useState({});
const documentRef = useRef(null);

useEffect(() => {
  if (documentRef.current.offsetWidth < 800) {
    const updatedStyle = {
      display: 'none',
    }
    setStyle(updatedStyle);
  }
}, [documentRef.current]);

1 个答案:

答案 0 :(得分:0)

当像素低于800像素时,您可以使用CSS媒体查询来隐藏某些内容。

@media only screen and (max-width: 800px) {
  show-lg-only {
    display: none;
  }
}