API Reference

FMenu

This is the builder for adding a menu to Univer. You shall never construct this class by yourself. Instead, call createMenu of FUniver to create a instance.

Please notice that until the appendTo method is called, the menu item is not added to the UI.

Please note that this menu cannot have submenus. If you want to have submenus, please use FSubmenu.

Access

Access through:

Setup

Register @univerjs/ui or a preset that includes it. In plugin mode, import @univerjs/ui/facade. Additional methods below require their listed plugin packages. See Facade setup.

@univerjs/ui

FMenu.appendTo

Append the menu to any menu position on Univer UI.

TypeScript
appendTo(path: string | string[]): void

Parameters

  • path — Required. Some predefined path to append the menu. The paths can be an array, or an array joined by | separator. Since lots of submenus reuse the same name, you may need to specify their parent menus as well.

Examples

TypeScript
// This menu item will appear on every `contextMenu.others` section.univerAPI  .createMenu({    id: 'custom-menu-id-1',    title: 'Custom Menu 1',    action: () => {      console.log('Custom Menu 1 clicked')    },  })  .appendTo('contextMenu.others')// This menu item will only appear on the `contextMenu.others` section on the main area.univerAPI  .createMenu({    id: 'custom-menu-id-2',    title: 'Custom Menu 2',    action: () => {      console.log('Custom Menu 2 clicked')    },  })  .appendTo(['contextMenu.mainArea', 'contextMenu.others'])

Package: @univerjs/ui · Type definitions

TypeScript
MenuManagerPosition: typeof MenuManagerPosition

Package: @univerjs/ui · Type definitions

FMenu.RibbonPosition

TypeScript
RibbonPosition: typeof RibbonPosition

Package: @univerjs/ui · Type definitions

FMenu.RibbonStartGroup

TypeScript
RibbonStartGroup: typeof RibbonStartGroup

Package: @univerjs/ui · Type definitions

How is this guide?

© 2026 DreamNum Co., Ltd.