Ariakit
/

SelectLabel

Renders a label for the Select component. Since it's not a native select element, we can't use the native label element. This component will move focus to the Select component when clicked.

Code examples

<SelectLabel>Favorite fruit</SelectLabel>
<Select />
<SelectItem value="Apple" />
<SelectItem value="Orange" />

Optional Props


render

RenderProp<React.HTMLAttributes<any> & { ref?: React.Ref<any> | undefined; }> | React.ReactElement<unknown, string | React.JSXElementConstructor<any>> | undefined

Allows the component to be rendered as a different HTML element or React component. The value can be a React element or a function that takes in the original component props and gives back a React element with the props merged.

Some Ariakit components detect the type of the underlying element when they mount. If the render element's type may change while the component is mounted, pass a key prop that changes with the element type so React remounts the component with the new element. Remounting resets uncontrolled state, so keep the relevant state controlled:

key={custom ? "custom" : "native"}
checked={checked}
onChange={() => setChecked(!checked)}
render={custom ? <div /> : <input />}
/>

Check out the Composition guide for more details.


store

SelectStore<SelectStoreValue> | undefined

Object returned by the useSelectStore hook. If not provided, the closest SelectProvider component's context will be used.

Stay tuned

Join 1,000+ subscribers and receive monthly tips & updates on new Ariakit content.

No spam. Unsubscribe anytime. Read latest issue