В этой серии статей о React я поделюсь вопросами для интервью по React.
Не забывайте подписываться на меня, чтобы увидеть больше таких статей.

Как повторно отобразить представление при изменении размера браузера?

Используя классы,

class WindowDimensions extends React.Component {
  constructor(props){
    super(props);
    this.updateWindowDimension = this.updateChart.bind(this);
  }
   
  componentDidMount() {
    window.addEventListener('resize', this.updateWindowDimension)
  }

  componentWillUnmount() {
    window.removeEventListener('resize', this.updateWindowDimension)
  }

  updateWindowDimension() {
    this.setState({
       width: window.innerWidth, height: window.innerHeight
    })
  }

  render() {
    return <span>{this.state.width} x {this.state.height}</span>
  }
}

Используя хуки useEffect React,

import React, { useLayoutEffect } from 'react';
import './style.css';
const useWindowDimension = () => {
    const [size, setSize] = useState([0, 0]);
    useLayoutEffect(() => {
    const updateWindowSize = () => {
       setSize([window.innerWidth, window.innerHeight]);
    };
    window.addEventListener('resize', updateWindowSize);
    updateWindowSize();
    return () => window.removeEventListener('resize', updateWindowSize);
  }, []);
  return size;
};
export default function App() {
const [width, height] = updateWindowDimension();
 return (
    <div>
      <h1>Hello React!</h1>
      <p>
        <span>
          Window size: {width} x {height}
        </span>;
      </p>
     </div>
   );
}

URL приложения, https://react-nichgv.stackblitz.io

Продолжайте учиться, продолжайте расти!

Давайте подключимся к LinkedIn !. Подробнее: вопрос о структуре данных javascript.