Code examples
Apple
Orange
Optional Props
checked
boolean | undefined
Determines if the checkmark should be rendered. This value is automatically derived from the context when it exists. Manually setting this prop will supersede the derived value.
Live examples
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"}
/>
Check out the Composition guide for more details.
store
MenuStore<MenuStoreValues> | undefined
Object returned by the
useMenuStore hook. This
prop doesn't affect the checkmark. It's accepted for consistency with
other Ariakit components and is not passed to the underlying element. The
checked state is derived solely from the
checked prop or,
when it's not provided, from the closest
MenuItemCheckbox or
MenuItemRadio
component.

