API general

La API Facade disponible en Univer depende del tipo de unidad actual y de los complementos registrados. Esta página presenta las API comunes de una aplicación Univer Boards.

Importación

TypeScript
import { FUniver } from '@univerjs/core/facade'import '@univerjs-pro/boards/facade'const univerAPI = FUniver.newAPI(univer)

Comandos

La mayoría de las operaciones de Univer se registran en el sistema de comandos. Esta ruta de ejecución unificada permite funciones como deshacer, rehacer y la colaboración.

Para conocer el diseño con más detalle, consulte el sistema de comandos de Univer.

Escuchar comandos

Use Event.BeforeCommandExecute para ejecutar lógica antes de un comando y Event.CommandExecuted para ejecutarla cuando termine.

TypeScript
const beforeDisposable = univerAPI.addEvent(univerAPI.Event.BeforeCommandExecute, ({ id, params }) => {  console.log('Antes del comando:', id, params)})const afterDisposable = univerAPI.addEvent(univerAPI.Event.CommandExecuted, ({ id, params }) => {  console.log('Comando ejecutado:', id, params)})

Para impedir que se ejecute un comando, establezca event.cancel en true desde un listener de BeforeCommandExecute.

TypeScript
const disposable = univerAPI.addEvent(univerAPI.Event.BeforeCommandExecute, (event) => {  if (event.id === 'board.command.set-name') {    event.cancel = true  }})

Los listeners devuelven un objeto IDisposable. Destrúyalos cuando ya no sean necesarios.

TypeScript
beforeDisposable.dispose()afterDisposable.dispose()disposable.dispose()

Ejecutar comandos

Si conoce el ID de un comando y sus parámetros, ejecútelo con FUniver.executeCommand. Por ejemplo, este comando de Boards cambia el nombre del Board activo:

TypeScript
const board = univerAPI.getActiveBoard()if (board) {  await univerAPI.executeCommand('board.command.set-name', {    unitId: board.getId(),    name: 'Notas del proyecto',  })}

API de eventos

Los eventos expuestos a través de univerAPI.Event proceden del núcleo de Univer y de los complementos registrados en la aplicación. El núcleo aporta eventos compartidos de comandos y unidades, y los complementos registrados pueden ampliar esa superficie. Antes de usar un evento, compruebe que pertenece a un complemento registrado.

Consulte la referencia de eventos de Facade para ver los nombres y tipos de parámetros disponibles en la versión actual.

Use addEvent para suscribirse y destruya el objeto devuelto para cancelar la suscripción:

TypeScript
const disposable = univerAPI.addEvent(univerAPI.Event.CommandExecuted, ({ id }) => {  if (id === 'board.command.set-name') {    console.log('El nombre del Board ha cambiado')  }})// Elimine el listener cuando ya no sea necesariodisposable.dispose()

Deshacer y rehacer

TypeScript
await univerAPI.undo()await univerAPI.redo()

UI

Consulte Componentes de la interfaz de Boards para ampliar los menús, la barra de herramientas y otras zonas de la interfaz de Boards.

WebSocket

Para usar las API de WebSocket, instale @univerjs/network, registre UniverNetworkPlugin e importe su extensión Facade.

TypeScript
import { UniverNetworkPlugin } from '@univerjs/network'import '@univerjs/network/facade'univer.registerPlugin(UniverNetworkPlugin)

Después puede suscribirse a los eventos del socket, enviar mensajes y cerrar la conexión:

TypeScript
const socket = univerAPI.createSocket('wss://example.com/boards')socket.open$.subscribe(() => {  socket.send('hello')})socket.message$.subscribe((message) => {  console.log('Mensaje WebSocket:', message.data)})socket.error$.subscribe((error) => {  console.error('Error de WebSocket:', error)})socket.close()

API de enumeración

Facade expone enumeraciones comunes mediante univerAPI.Enum:

TypeScript
console.log(univerAPI.Enum.UniverInstanceType.UNIVER_BOARD)console.log(univerAPI.Enum.BoardElementType.Shape)

API de métodos de utilidad

Facade expone utilidades compartidas mediante univerAPI.Util:

TypeScript
console.log(univerAPI.Util.tools.isString('Univer Boards')) // true

¿Cómo es esta guía?

© 2026 DreamNum Co., Ltd.