<script src="https://cdnjs.cloudflare.com/ajax/libs/react/17.0.2/umd/react.development.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/react-dom/17.0.2/umd/react-dom.development.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/babel-standalone/6.26.0/babel.min.js"></script>
<script type="text/babel">
const { useState, useEffect } = React;
const [orientation, setOrientation] = useState('');
function handleOrientationChange(event) {
const { matches, media } = event;
const mediaQueryPortrait = window.matchMedia('(orientation: portrait)');
const mediaQueryLandscape = window.matchMedia('(orientation: landscape)');
if (mediaQueryPortrait.matches) {
setOrientation('portrait');
} else if (mediaQueryLandscape.matches) {
setOrientation('landscape');
mediaQueryPortrait.addListener(handleOrientationChange);
mediaQueryLandscape.addListener(handleOrientationChange);
mediaQueryPortrait.removeListener(handleOrientationChange);
mediaQueryLandscape.removeListener(handleOrientationChange);
<div className='container'>
<h3>React Js Get Device Orientation</h3>
<p>Device Orientation: {orientation}</p>
ReactDOM.render(<App />, document.getElementById('app'));
box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.12), 0 2px 4px 0 rgba(0, 0, 0, 0.24);