SwipeableDrawer API
Demos
For examples and details on the usage of this React component, visit the component demo pages:
Import
import SwipeableDrawer from '@mui/material/SwipeableDrawer';
// or
import { SwipeableDrawer } from '@mui/material';
Props
Props of the Drawer component are also available.
Name | Type | Default | Description |
---|---|---|---|
onClose* | func | Callback fired when the component requests to be closed. Signature: function(event: object) => void event: The event source of the callback. | |
onOpen* | func | Callback fired when the component requests to be opened. Signature: function(event: object) => void event: The event source of the callback. | |
open* | bool | false | If true , the component is shown. |
children | node | The content of the component. | |
disableBackdropTransition | bool | false | Disable the backdrop transition. This can improve the FPS on low-end devices. |
disableDiscovery | bool | false | If true , touching the screen near the edge of the drawer will not slide in the drawer a bit to promote accidental discovery of the swipe gesture. |
disableSwipeToOpen | bool | typeof navigator !== 'undefined' && /iPad|iPhone|iPod/.test(navigator.userAgent) | If true , swipe to open is disabled. This is useful in browsers where swiping triggers navigation actions. Swipe to open is disabled on iOS browsers by default. |
hysteresis | number | 0.52 | Affects how far the drawer must be opened/closed to change its state. Specified as percent (0-1) of the width of the drawer |
minFlingVelocity | number | 450 | Defines, from which (average) velocity on, the swipe is defined as complete although hysteresis isn't reached. Good threshold is between 250 - 1000 px/s |
SwipeAreaProps | object | The element is used to intercept the touch events on the edge. | |
swipeAreaWidth | number | 20 | The width of the left most (or right most) area in px that the drawer can be swiped open from. |
transitionDuration | number | { appear?: number, enter?: number, exit?: number } | { enter: theme.transitions.duration.enteringScreen, exit: theme.transitions.duration.leavingScreen, } | The duration for the transition, in milliseconds. You may specify a single timeout for all transitions, or individually with an object. |
The
ref
is forwarded to the root element.