Open In App

How to use useMediaQuery Component in ReactJS ?

Improve
Improve
Like Article
Like
Save
Share
Report

The useMediaQuery Component is a CSS media query hook for React. Using this functionality, we can write our own CSS media query for which this function looks for a match, and it renders if the query matches. Material UI for React has this component available for us, and it is very easy to integrate. We can use the following approach in ReactJS to use useMediaQuery Component.

Creating React Application And Installing Module:

  • Step 1: Create a React application using the following command:

    npx create-react-app foldername
  • Step 2: After creating your project folder i.e. foldername, move to it using the following command:

    cd foldername
  • Step 3: After creating the ReactJS application, Install the material-ui module using the following command:

    npm install @material-ui/core/useMediaQuery
  • Project Structure: It will look like the following.

    Project Structure

    Example: Now write down the following code in the App.js file. Here, App is our default component where we have written our code.

    App.js




    import React from 'react';
    import useMediaQuery from '@material-ui/core/useMediaQuery';
      
    export default function App() {
      const ourMediaQuery = useMediaQuery('(min-width:400px)');
      return (
        <div style={{ display: 'block'}}>
          <h4>How to use useMediaQuery Component in ReactJS?</h4>
          <span>{`Is Screen at Minimum 400px: ${ourMediaQuery}`}</span>
        </div>
      );
    }

    
    

    Step to Run Application: Run the application using the following command from the root directory of the project:

    npm start

    Output: Now open your browser and go to http://localhost:3000/, you will see the following output:

    Reference: https://material-ui.com/components/use-media-query/


    Last Updated : 13 Apr, 2021
    Like Article
    Save Article
    Previous
    Next
    Share your thoughts in the comments
Similar Reads