Base Snapshot

IBaseSnapshot

IBaseSnapshot es el formato de persistencia utilizado por Univer Bases. Describe una unidad base, incluidas tablas, orden de las tablas, versión del esquema, marcas de tiempo y metadatos de revisión opcionales.

Propiedades

PropiedadTipoDescripción
idstringId. único de la unidad base.
namestringNombre base.
schemaVersionnumberVersión del esquema de instantánea.
tablesRecord\<string, ITableSnapshot\>Tablas codificadas por ID de tabla.
tableOrderstring[]Lista ordenada de tablas ids.
createdAtnumberMarca de tiempo de creación.
updatedAtnumberMarca de tiempo de actualización.
createdBy?stringId. del creador.
rev?numberValor de revisión opcional utilizado por las capas de persistencia o colaboración.

Instantánea mínima

TypeScript
const baseSnapshot = {  id: 'base-1',  name: 'Product tracker',  schemaVersion: 1,  tableOrder: ['tasks'],  tables: {    tasks: {      id: 'tasks',      name: 'Tasks',      primaryFieldId: 'title',      fieldOrder: ['title', 'status'],      fields: {        title: { id: 'title', name: 'Title', type: 'text', config: {} },        status: { id: 'status', name: 'Status', type: 'singleSelect', config: {} },      },      recordOrder: ['rec-1'],      records: {        'rec-1': {          id: 'rec-1',          values: { title: 'Write docs', status: 'In progress' },          orderKey: 'a0',          createdAt: Date.now(),          updatedAt: Date.now(),        },      },      views: {},      viewOrder: [],    },  },  createdAt: Date.now(),  updatedAt: Date.now(),}

Uso

IBaseSnapshot se utiliza principalmente para:

  1. Crear una unidad UniverInstanceType.UNIVER_BASE.
  2. Persistir y restaurar datos estructurados.
  3. Preparar datos para el procesamiento del lado del servidor.
  4. Transferir datos entre servicios de colaboración y de importación/exportación.

Los objetos instantáneos son datos de persistencia. Después de ejecutar una Base, prefiera las API de Facade en lugar de mutar el objeto de instantánea directamente.

Guardar y restaurar

Facade save() incluye recursos de los plugins registrados, como paneles y comentarios locales. saveToBackend es la función de persistencia de su aplicación.

TypeScript
const base = univerAPI.getActiveBase()if (!base) throw new Error('Open a Base first')await saveToBackend(base.save())

En una instancia nueva, registre los mismos plugins antes de llamar a univerAPI.createBase(savedSnapshot). No guarde solo tables ni modifique directamente la instantánea del modelo activo.

¿Cómo es esta guía?

© 2026 DreamNum Co., Ltd.