How to handle clickaway of mui snackbar in react js?
November 10, 2023Hi Friends 👋,
Welcome To aGuideHub!
To handle clickaway of mui snackbar in react js, you can comment and uncomment the if (reason === "clickaway") { return; }
, a condition in the handleClose
function. it will handle clickaway of mui snackbar in React JS.
Today, I am going to show you, How to handle clickaway of mui snackbar in react js
Installation
Install the following packages to use mui snackbar alert in react js.
npm
npm install @mui/material @emotion/react @emotion/styled
yarn
yarn add @mui/material @emotion/react @emotion/styled
Table of contents
- Install MUI and create a new React app.
- Import Material-UI snackbar alert.
- Use the snackbar alert Component
Step 1: Install MUI and create a new React app.
First you have to install the React project. You should use create-react-app
command to create a new React project.
npx create-react-app my-app
cd my-app
npm start
Step 2: Import Material-UI snackbar alert.
After installing MUI
, you have to import your React component. To do this, add the following line to the top of your component file.
import * as React from "react";
import Button from "@mui/material/Button";
import Snackbar from "@mui/material/Snackbar";
import IconButton from "@mui/material/IconButton";
import CloseIcon from "@mui/icons-material/Close";
Step 3: Use the snackbar alert Component.
A snackbar alert screen is an animated placeholder that simulates the layout of a website while data is being loaded.
<Snackbar
open={open}
autoHideDuration={60000}
onClose={handleClose}
message="Astha"
action={action}
/>
MUI material handle clickaway of mui snackbar example.
The below code is an example, you need to import snackbar alert
Component. Then, If you want to remove the snackbar when you click outside the snackbar, you have to remove the condition if (reason === "clickaway") { return; }
.
App.js
import * as React from "react";
import Button from "@mui/material/Button";
import Snackbar from "@mui/material/Snackbar";
import IconButton from "@mui/material/IconButton";
import CloseIcon from "@mui/icons-material/Close";
export default function SimpleSnackbar() {
const [open, setOpen] = React.useState(false);
const handleClick = () => {
setOpen(true);
};
const handleClose = (event, reason) => {
// if (reason === "clickaway") {
// return;
// }
setOpen(false);
};
const action = (
<React.Fragment>
<Button color="secondary" size="small" onClick={handleClose}>
UNDO
</Button>
<IconButton
size="small"
aria-label="close"
color="inherit"
onClick={handleClose}
>
<CloseIcon fontSize="small" />
</IconButton>
</React.Fragment>
);
return (
<div>
<Button onClick={handleClick}>Open simple snackbar</Button>
<Snackbar
open={open}
autoHideDuration={60000}
onClose={handleClose}
message="Astha"
action={action}
/>
</div>
);
}
In the above code example, I have used the @mui/material
component and handle clickaway of mui snackbar in react js.
Here, we are provided code sandbox links for the above program handle clickaway of mui snackbar in react js. Then you can use whenever you want and do the changes as per your requirements.
All the best 👍