Intégrer dans Web Component

Consultez d’abord l’installation et les premiers pas. Cet exemple utilise Web Component pour monter Univer Bases dans un conteneur avec une hauteur explicite.

Étapes d’intégration

  1. Initialisez Univer dans connectedCallback.
  2. Libérez Univer dans disconnectedCallback.

Exemple de code

TypeScript
import { UniverBasesPlugin } from '@univerjs-pro/bases'import { UniverBasesUIPlugin } from '@univerjs-pro/bases-ui'import BasesUIfrFR from '@univerjs-pro/bases-ui/locale/fr-FR'import BasesfrFR from '@univerjs-pro/bases/locale/fr-FR'import { UniverProFormulaEnginePlugin } from '@univerjs-pro/engine-formula'import { UniverLicensePlugin } from '@univerjs-pro/license'import { LocaleType, mergeLocales, Univer, UniverInstanceType } from '@univerjs/core'import DesignfrFR from '@univerjs/design/locale/fr-FR'import { UniverRenderEnginePlugin } from '@univerjs/engine-render'import { UniverUIPlugin } from '@univerjs/ui'import UIfrFR from '@univerjs/ui/locale/fr-FR'import '@univerjs/design/lib/index.css'import '@univerjs/ui/lib/index.css'import '@univerjs-pro/bases-ui/lib/index.css'class UniverEditorElement extends HTMLElement {  private univer?: Univer  connectedCallback() {    const container = this    const univer = new Univer({      locale: LocaleType.FR_FR,      locales: {        [LocaleType.FR_FR]: mergeLocales(          DesignfrFR,          UIfrFR,          BasesfrFR,          BasesUIfrFR,        ),      },    })    univer.registerPlugin(UniverLicensePlugin, {      license: 'your license.txt',    })    univer.registerPlugin(UniverRenderEnginePlugin)    univer.registerPlugin(UniverUIPlugin, { container })    univer.registerPlugin(UniverProFormulaEnginePlugin)    univer.registerPlugin(UniverBasesPlugin)    univer.registerPlugin(UniverBasesUIPlugin)    univer.createUnit(UniverInstanceType.UNIVER_BASE, {})    this.univer = univer  }  disconnectedCallback() {    this.univer?.dispose()    this.univer = undefined  }}customElements.define('univer-bases-editor', UniverEditorElement)
HTML
<univer-bases-editor style="display: block; height: 600px"></univer-bases-editor>

Que pensez-vous de ce guide ?

© 2026 DreamNum Co., Ltd.