# CustomMenuItem

An interface that provides the ability to add custom menu item to the [<UserButton />](https://clerk.com/docs/nuxt/reference/components/user/user-button.md) component.

## Attributes

| Name         | Type                                         | Description                                                                                                                                                   |
| ------------ | -------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| label        | string                                       | The label of the custom menu item.                                                                                                                            |
| href?        | string | undefined                          | The URL or path used to navigate to a route inside the app or an external website. It should be relative for internal routes and absolute for external links. |
| onClick?     | () => void | undefined                      | A function to be called when the menu item is clicked.                                                                                                        |
| open?        | string | undefined                          | The path segment used to open a specific custom page in the user profile modal.                                                                               |
| mountIcon?   | ((el: HTMLDivElement) => void) | undefined  | This function is called to mount the icon of the label. The el argument is the element where the icon should be mounted.                                      |
| unmountIcon? | ((el?: HTMLDivElement) => void) | undefined | This function is called to unmount the icon of the label. The el argument is the same element that was passed to the mountIcon function.                      |
| mount?       | ((el: HTMLDivElement) => void) | undefined  | This function is called to mount the content of the custom page. The el argument is the element where the content should be mounted.                          |
| unmount?     | ((el?: HTMLDivElement) => void) | undefined | This function is called to unmount the content of the custom page. The el argument is the same element that was passed to the mount function.                 |

[userbutton-ref]: /docs/reference/components/user/user-button

---

## Sitemap

[Overview of all docs pages](https://clerk.com/docs/llms.txt)
