Home

Awesome

An elegant, accessible toggle component for React. Also a glorified checkbox.

See usage and examples.

Props

The component takes the following props.

PropTypeDescription
checkedbooleanIf true, the toggle is checked. If false, the toggle is unchecked. Use this if you want to treat the toggle as a controlled component
defaultCheckedbooleanIf true on initial render, the toggle is checked. If false on initial render, the toggle is unchecked. Use this if you want to treat the toggle as an uncontrolled component
onChangefunctionCallback function to invoke when the user clicks on the toggle. The function signature should be the following: function(e) { }. To get the current checked status from the event, use e.target.checked.
onFocusfunctionCallback function to invoke when field has focus. The function signature should be the following: function(e) { }
onBlurfunctionCallback function to invoke when field loses focus. The function signature should be the following: function(e) { }
namestringThe value of the name attribute of the wrapped <input> element
valuestringThe value of the value attribute of the wrapped <input> element
idstringThe value of the id attribute of the wrapped <input> element
iconsobjectIf false, no icons are displayed. You may also pass custom icon components in icons={{checked: <CheckedIcon />, unchecked: <UncheckedIcon />}}
aria-labelledbystringThe value of the aria-labelledby attribute of the wrapped <input> element
aria-labelstringThe value of the aria-label attribute of the wrapped <input> element
disabledbooleanIf true, the toggle is disabled. If false, the toggle is enabled

Installation

npm install react-toggle

Usage

If you want the default styling, include the component's CSS with

import "react-toggle/style.css" // for ES6 modules
// or
require("react-toggle/style.css") // for CommonJS

Development

npm install
npm run dev

Build

npm run build

License

MIT