A minimalist approach to custom dropdowns, autocompletes, and more.
npm install dropkitA minimalist approach to custom dropdowns, autocompletes, and more.
- bring your own markup
- no magic
- full a11y support
- supports multi-select
- controlled, integrate with any form library
```
npm i dropkit --save
`javascript
import React from "react";
import cx from "classnames";
import { useSelect } from "dropkit";
function Dropdown() {
const [label, labelSet] = React.useState("Please select");
const {
id,
items,
isOpen,
getControlProps,
getDropProps,
} = useSelect({
items: [
{ value: "san-francisco", label: "San Francisco" },
{ value: "los-angeles", label: "Los Angeles" },
{ value: "san-diego", label: "San Diego" },
{ value: "new-york", label: "New York" },
{ value: "albany", label: "Albany" },
{ value: "rochester", label: "Rochester" }
],
onSelect(item) {
labelSet(item.label); // set to active item
},
onRemove() {
labelSet("Please select"); // reset to placeholder
},
});
return (
<>
{isOpen && (
$3
Many thanks to @wmira for providing the dropkit
npm package name. If you're looking for the Digital Ocean V2 REST API library,
try v0.9.4` and below.MIT License © Eric Bailey