Headless React Menu component with @react-aria
and @react-stately
.
Getting Started
$ npm install @headless-react/menu
import { Menu } from '@headless-react/menu'
const AutoComplete = ({
label,
items
}) => {
return (
<ComboBox defaultItems={items}>
<ComboBox.Label>{label}</ComboBox.Label>
<ComboBox.InputGroup>
{({ selectedItem }) => (
<>
<ComboBox.Input />
<ComboBox.PopoverTrigger />
</>
)}
</ComboBox.InputGroup>
<ComboBox.Popover>
<ComboBox.Options>
{({ options }) => options.map(option => (
<ComboBox.Option key={option.key} option={option}>
{option.name}
</ComboBox.Option>
))}
</ComboBox.Options>
</ComboBox.Popover>
</ComboBox>
)
}
Example
CodeSandBox Example