API 참조

@univerjs/sheets-ui

이 API 페이지의 본문은 현재 영어로 제공됩니다. 코드 시그니처와 식별자는 언어에 따라 바뀌지 않습니다.

Spreadsheet UI layer for Univer Sheets.

TypeScript
import { UniverSheetsUIPlugin } from '@univerjs/sheets-ui'univer.registerPlugin(UniverSheetsUIPlugin, {})

Entry Points

  • Facade: @univerjs/sheets-ui/facade
  • Locale: @univerjs/sheets-ui/locale/*

The root entry exports ISheetBarService and SheetBarService for sheet-tab state and interactions. DEFINED_NAME_CONTAINER identifies the defined-name panel for component overrides.

IUniverSheetsUIConfig

TypeScript
import type { DependencyOverride } from '@univerjs/core'import type { IScrollBarProps } from '@univerjs/engine-render'import type { IPermissionDetailUserPartProps } from '@univerjs/sheets-ui'import type { ComponentType, MenuConfig } from '@univerjs/ui'export interface IUniverSheetsUIConfig {  menu?: MenuConfig  disableAutoFocus?: true  override?: DependencyOverride  /**   * Whether arrow keys wrap to another row or column at a worksheet boundary.   * Does not affect Enter/Tab cycling within selected ranges.   * @default true   */  allowArrowKeyWrapOnSheetBoundary?: boolean  /**   * The maximum count of rows triggering auto height. This is used to avoid performance issue.   * @default 1000   */  maxAutoHeightCount?: number  /**   * Whether to show the formula bar.   */  formulaBar?: boolean  /**   * The config of the footer.   * @default {}   */  footer?:    | false    | {        /**         * Sheet bar is the manager of sub sheets, including add/switch/delete sub sheets.         * @default true         */        sheetBar?: boolean        /**         * statistic bar including statistic info current selections, such as count, sum, average, etc.         * @default true         */        statisticBar?: boolean        /**         * Including the menus in the footer. such as highlight, gridlines, etc.         * @default true         */        menus?: boolean        /**         * Zoom slider is the zoom slider in the footer.         * @default true         */        zoomSlider?: boolean        /**         * The config of the add sheet button in the sheet bar.         */        addSheetButtonConfig?: {          /**           * Whether to show the add sheet button in the sheet bar.           * When `footer` or `footer.sheetBar` is false, this config will not work because the sheet bar will not be rendered.           * @default true           */          show?: boolean          /**           * The default row count of the new sheet created by the add sheet button.           * @default 1000           */          defaultRowCount?: number          /**           * The default column count of the new sheet created by the add sheet button.           * @default 20           */          defaultColumnCount?: number        }      }  /**   * @deprecated Use `footer.statisticBar` instead.   */  statusBarStatistic?: boolean  clipboardConfig?: {    hidePasteOptions?: boolean  }  /** The config of the scroll bar. */  scrollConfig?: IScrollBarProps  /**   * Strategy for showing the protected range shadow.   * - true or 'always': Show shadow for all protected ranges (default behavior)   * - 'non-editable': Only show shadow for ranges that cannot be edited (Edit permission is false)   * - 'non-viewable': Only show shadow for ranges that cannot be viewed (View permission is false)   * - false or 'none': Never show shadow for protected ranges   * @default true   */  protectedRangeShadow?: boolean | 'always' | 'non-editable' | 'non-viewable' | 'none'  /**   * The custom component of the protected range user selector.   */  protectedRangeUserSelector?: {    /**     * custom component, should implement the `IPermissionDetailUserPartProps` interface.     */    component: ComponentType<IPermissionDetailUserPartProps>    /**     * The framework of the component. Must be passed correctly.     */    framework: string  }  /**   * Whether to disable the force string alert.   * @default false   */  disableForceStringAlert?: boolean  /**   * Whether to disable the force string mark.   * @default false   */  disableForceStringMark?: boolean  /**   * Whether to disable the edit.   * @default false   */  disableEdit?: boolean}

이 가이드는 어떠셨나요?

© 2026 DreamNum Co., Ltd.