Skip to content
+

Snackbar

The Snackbar component informs users that an action has been or will be performed by the app.

Snackbar API

Import

import { Snackbar } from '@mui/base/Snackbar';
// or
import { Snackbar } from '@mui/base';
Learn about the difference by reading this guide on minimizing bundle size.

Props

Props of the native component are also available.

NameTypeDefaultDescription
autoHideDurationnumbernull

The number of milliseconds to wait before automatically calling the onClose function. onClose should then set the state of the open prop to hide the Snackbar. This behavior is disabled by default with the null value.

disableWindowBlurListenerboolfalse

If true, the autoHideDuration timer will expire even if the window is not focused.

exitedbooltrue

The prop used to handle exited transition and unmount the component.

onClosefunc

Callback fired when the component requests to be closed. Typically onClose is used to set state in the parent component, which is used to control the Snackbar open prop. The reason parameter can optionally be used to control the response to onClose, for example ignoring clickaway.

Signature:function(event: React.SyntheticEvent | Event, reason: string) => void
  • event The event source of the callback.
  • reason Can be: "timeout" (autoHideDuration expired), "clickaway", or "escapeKeyDown".
openbool

If true, the component is shown.

resumeHideDurationnumber

The number of milliseconds to wait before dismissing after user interaction. If autoHideDuration prop isn't specified, it does nothing. If autoHideDuration prop is specified but resumeHideDuration isn't, we default to autoHideDuration / 2 ms.

slotProps{ clickAwayListener?: func
| { children: element, disableReactTree?: bool, mouseEvent?: 'onClick'
| 'onMouseDown'
| 'onMouseUp'
| 'onPointerDown'
| 'onPointerUp'
| false, onClickAway?: func, touchEvent?: 'onTouchEnd'
| 'onTouchStart'
| false }, root?: func
| object }
{}

The props used for each slot inside the Snackbar.

slots{ root?: elementType }{}

The components used for each slot inside the Snackbar. Either a string to use a HTML element or a component.

See Slots API below for more details.


The ref is forwarded to the root element.

Slots

To learn how to customize the slot, check out the Overriding component structure guide.

Slot nameClass nameDefault componentDescription
root.base-Snackbar-root'div'The component that renders the root.